Software quality assessment methods, apparatus and computer-readable storage media

By identifying R-level quality characteristics and using a Bayesian network model in software quality assessment, the problem of human subjectivity in the software quality assessment process is solved, resulting in more reliable quality assessment results.

CN114968765BActive Publication Date: 2025-11-14JIANGSU XCMG CONSTRUCTION MACHINERY RESEARCH INSTITUTE LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202210465208.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-04-29
Publication Date
2025-11-14
Estimated Expiration
2042-04-29

AI Technical Summary

Technical Problem

The existing software quality assessment process is highly subjective, resulting in low reliability of the assessment results.

Method used

By using a software quality model, we identify the R-level quality characteristics that influence quality attributes, and then use Bayesian networks and prior distributions to determine the posterior distribution of the quality attribute scores, thereby objectively reflecting the quality level of the target software.

Benefits of technology

This improves the reliability of software quality assessment results, ensuring that the assessment results more objectively reflect the probability of the target software's quality attributes being at different scores.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114968765B_ABST
    Figure CN114968765B_ABST
Patent Text Reader

Abstract

This disclosure provides a software quality assessment method, apparatus, and computer-readable storage medium, relating to the field of software testing technology. The method includes: determining R-level quality characteristics that influence the quality attributes based on a software quality model corresponding to the quality attributes of the target software, wherein the R-level quality characteristics have a direct impact on the quality attributes, and each level of quality characteristics includes M quality characteristics, where M≥1 and R≥1; determining a first prior distribution of the scores of the quality attributes; determining M second prior distributions of the scores of the M quality characteristics in the R-level quality characteristics; determining a posterior distribution of the scores of the quality attributes based on the first prior distribution, the M second prior distributions, and a first likelihood function of the M quality characteristics in the R-level quality characteristics; and determining the software quality assessment result of the target software based on the posterior distribution.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of software testing technology, and in particular to a software quality assessment method, apparatus, and computer-readable storage medium. Background Technology

[0002] Software quality is the sum of all characteristics and properties relating to a software product’s ability to meet specified and implicit requirements.

[0003] Software quality evaluation involves using appropriate technologies to measure the quality characteristics and sub-characteristics of the software being evaluated, and then assessing the results to determine whether the software product meets specific requirements. This allows for appropriate management and quality improvement of the software based on the evaluation data.

[0004] In related technologies, scores for various software quality characteristics are obtained through methods such as scoring by domain experts. Then, the scores for each software quality characteristic are weighted and summarized to determine the software quality assessment result based on the overall software quality score. Summary of the Invention

[0005] The inventors noted that in the methods of the related technologies, the scores of each quality characteristic depend on the experience of the scorer, which makes the software quality assessment process highly subjective and thus results in low reliability of the software quality assessment results.

[0006] To address the aforementioned problems, the present disclosure proposes the following solutions.

[0007] According to one aspect of the present disclosure, a software quality assessment method is provided, comprising: determining R-level quality characteristics that affect the quality attributes based on a software quality model corresponding to quality attributes of a target software, wherein the R-level quality characteristics have a direct impact on the quality attributes, and each level of quality characteristics includes M quality characteristics, M≥1, R≥1; determining a first prior distribution of the scores of the quality attributes; determining M second prior distributions of the scores of the M quality characteristics in the R-level quality characteristics; determining a posterior distribution of the scores of the quality attributes based on the first prior distribution, the M second prior distributions, and a first likelihood function of the M quality characteristics in the R-level quality characteristics; and determining a software quality assessment result of the target software based on the posterior distribution.

[0008] In some embodiments, determining a first prior distribution of the scores of the quality attribute and M second prior distributions of the scores of the M quality characteristics in the R-th quality characteristics includes: obtaining a first initial prior distribution of the scores of the quality attribute and M second initial prior distributions of the scores of the M quality characteristics in the R-th quality characteristics; determining the first prior distribution based on the first initial prior distribution; and determining the M second prior distributions based on at least a portion of the second initial prior distributions that satisfy a first preset confidence level.

[0009] In some embodiments, the at least partial second initial prior distributions include N second initial prior distributions of the scores of N quality characteristics in the R-th quality characteristics, 1≤N≤M, where, when R≥2, the i-th quality characteristic has a direct impact on the (i+1)-th quality characteristic, 1≤i≤R-1; determining the M second prior distributions based on the at least partial second initial prior distributions satisfying a first preset confidence level includes: determining the N second initial prior distributions as N second prior distributions of the scores of the N quality characteristics when R≥2 and 1≤N≤M-1; determining the MN quality characteristics in the R-th quality characteristics other than the N quality characteristics. The second prior distribution of the score of the j-th quality characteristic, 1≤j≤MN, includes: determining E quality characteristics that affect the j-th quality characteristic, wherein the E quality characteristics include the quality characteristics in the R-1 level quality characteristics, and E≥1; determining E third initial prior distributions of the scores of the E quality characteristics; and determining the second prior distribution of the score of the j-th quality characteristic based on at least one of the first set of prior distributions and the second set of prior distributions, wherein the first set of prior distributions includes F third initial prior distributions of the E third initial prior distributions that satisfy the second preset confidence level, and 1≤F≤E, and the second set of prior distributions includes the N second initial prior distributions.

[0010] In some embodiments, determining the second prior distribution of the score of the j-th quality characteristic based on at least one of the first set of prior distributions and the second set of prior distributions includes: determining the second prior distribution of the score of the j-th quality characteristic based on the first set of prior distributions and the second initial prior distribution of the score of the j-th quality characteristic.

[0011] In some embodiments, determining the second prior distribution of the score of the j-th quality characteristic based on the first set of prior distributions and the second initial prior distribution of the score of the j-th quality characteristic includes: determining a second likelihood function for the E quality characteristics based on the F third initial prior distributions when F = E-1; determining EF third prior distributions of the scores of the EF quality characteristics other than the F quality characteristics among the E quality characteristics based on the second initial prior distribution of the score of the j-th quality characteristic and the second likelihood function; and determining the second prior distribution of the score of the j-th quality characteristic based on the second initial prior distribution of the score of the j-th quality characteristic, the second likelihood function, and the EF third prior distributions.

[0012] In some embodiments, determining the second prior distribution of the score of the j-th quality characteristic based on the first set of prior distributions and the second initial prior distribution of the score of the j-th quality characteristic includes: determining a second likelihood function for the E quality characteristics based on the F third initial prior distributions when 1≤F≤E-2; determining a first joint distribution of the scores of the F quality characteristics based on the second initial prior distribution of the score of the j-th quality characteristic and the second likelihood function; and determining a second prior distribution of the score of the j-th quality characteristic based on the second initial prior distribution of the score of the j-th quality characteristic, the second likelihood function, and the first joint distribution.

[0013] In some embodiments, determining the second prior distribution of the score of the j-th quality characteristic based on the first set of prior distributions and the second initial prior distribution of the score of the j-th quality characteristic includes: determining a second likelihood function for the E quality characteristics based on the F third initial prior distributions when F = E; and determining the second prior distribution of the score of the j-th quality characteristic based on the second initial prior distribution of the score of the j-th quality characteristic, the second likelihood function, and any one of the third initial prior distributions.

[0014] In some embodiments, determining the second prior distribution of the score of the j-th quality characteristic based on the first set of prior distributions and the second initial prior distribution of the score of the j-th quality characteristic includes: determining a first intermediate prior distribution of the score of the j-th quality characteristic based on the first set of prior distributions and the second initial prior distribution of the score of the j-th quality characteristic; determining a third likelihood function for M quality characteristics in the R-th quality characteristics based on the second set of prior distributions; determining a second intermediate prior distribution of the score of the j-th quality characteristic based on the third likelihood function and the first prior distribution; and determining the one of the first intermediate prior distribution and the second intermediate prior distribution that satisfies a third preset confidence level as the second prior distribution of the score of the j-th quality characteristic.

[0015] In some embodiments, determining the second prior distribution of the score for the j-th quality characteristic based on at least one of a first set of prior distributions and a second set of prior distributions includes: determining a third likelihood function for M quality characteristics in the R-th quality characteristics based on the second set of prior distributions; and determining the second prior distribution of the score for the j-th quality characteristic based on the third likelihood function and the first prior distribution.

[0016] In some embodiments, determining the second prior distribution of the score for the j-th quality characteristic based on the third likelihood function and the first prior distribution includes: determining the second joint distribution of the scores for the MN quality characteristics based on the third likelihood function and the first prior distribution when 1≤N≤M-2; and determining the second prior distribution of the score for the j-th quality characteristic based on the second joint distribution.

[0017] In some embodiments, determining the second prior distribution of the score for the j-th quality characteristic based on the third likelihood function and the first prior distribution includes: in the case of N = M-1, determining the second prior distribution of the score for the j-th quality characteristic based on the third likelihood function and the first prior distribution.

[0018] In some embodiments, the E quality characteristics may further include quality characteristics in the R-level quality characteristics.

[0019] In some embodiments, determining the M second prior distributions based on at least a portion of the second initial prior distributions that satisfy a first preset confidence level includes: determining the N second initial prior distributions as the M second prior distributions when R≥2 and N=M.

[0020] In some embodiments, determining the first prior distribution based on the first initial prior distribution includes: determining the first prior distribution based on at least a portion of the second initial prior distribution and the first initial prior distribution when the first initial prior distribution does not meet the fourth preset confidence level.

[0021] In some embodiments, the at least partial second initial prior distribution includes N second initial prior distributions of scores for N quality characteristics in the R-th quality characteristics, 1 ≤ N ≤ M. Determining the first prior distribution based on the at least partial second initial prior distribution and the first initial prior distribution includes: when N = M-1, determining a third likelihood function for M quality characteristics in the R-th quality characteristics based on the N second initial prior distributions; determining MN second prior distributions of scores for MN quality characteristics in the R-th quality characteristics other than the N quality characteristics based on the third likelihood function and the first initial prior distribution; and determining the first prior distribution based on the third likelihood function, the first initial prior distribution, and the MN second prior distributions.

[0022] In some embodiments, the at least partial second initial prior distribution includes N second initial prior distributions of the scores of N quality characteristics in the R-th quality characteristics, 1≤N≤M. Determining the first prior distribution based on the at least partial second initial prior distribution and the first initial prior distribution includes: determining a third likelihood function for M quality characteristics in the R-th quality characteristics based on the N second initial prior distributions when 1≤N≤M-2; determining a third joint distribution of the scores of the M quality characteristics based on the third likelihood function and the first initial prior distribution; and determining the first prior distribution based on the third likelihood function, the first initial prior distribution, and the third joint distribution.

[0023] In some embodiments, the at least partial second initial prior distribution includes N second initial prior distributions of scores for N quality characteristics in the R-th quality characteristics, 1 ≤ N ≤ M. Determining the first prior distribution based on the at least partial second initial prior distribution and the first initial prior distribution includes: when N = M, determining a third likelihood function for the M quality characteristics in the R-th quality characteristics based on the N second initial prior distributions; and determining the first prior distribution based on the third likelihood function, the first initial prior distribution, and any one of the second initial prior distributions.

[0024] In some embodiments, determining the first prior distribution based on the first initial prior distribution includes: determining the first initial prior distribution as the first prior distribution if the first initial prior distribution satisfies the fourth preset confidence level.

[0025] In some embodiments, determining the software quality assessment result of the target software based on the posterior distribution includes: determining the score of the quality attribute based on the posterior distribution; and determining the software quality assessment result of the target software based on the score of the quality attribute.

[0026] In some embodiments, determining the score of the quality attribute based on the posterior distribution includes: determining the score corresponding to a posterior probability greater than a preset probability in the posterior distribution as the score of the quality attribute.

[0027] In some embodiments, determining the score of the quality attribute based on the posterior distribution includes: determining the score corresponding to the maximum posterior probability in the posterior distribution as the score of the quality attribute.

[0028] In some embodiments, the second joint distribution is: The second prior distribution of the score for the j-th quality characteristic is: Among them, C obs Representing the N quality characteristics, C mis Representing the MN quality characteristics, C misj Let Q represent the j-th quality characteristic among the MN quality characteristics, and let p(C) represent the quality attribute. obs C mis |Q) represents the third likelihood function, and q(Q) represents the first prior distribution. <lnp(C obs C mis |Q)> q(Q) This represents the expected calculation result for q(Q).

[0029] In some embodiments, the second prior distribution of the score for the j-th quality characteristic is: Among them, C obs Representing the N quality characteristics, C mis Representing the MN quality characteristics, C misj Let Q represent the j-th quality characteristic among the MN quality characteristics, and let p(C) represent the quality attribute. obs C mis |Q) represents the third likelihood function, and q(Q) represents the first prior distribution.

[0030] In some embodiments, at the (k+1)th iteration, the MN second prior distributions are: The first prior distribution is: Among them, C obs Representing the N quality characteristics, C mis Let MN represent the MN quality characteristics, Q represent the quality attribute, and p(C) represent the quality property. obs C mis |Q) represents the third likelihood function, p(Q) represents the first initial prior distribution, k represents the iteration number, k≥0, and at the k=0th iteration, q(Q) 0 Let p(Q) be the value.

[0031] In some embodiments, the third joint distribution is: The first prior distribution is: Among them, C obs Representing the N quality characteristics, C mis Representing the MN quality characteristics, C misj Let Q represent the j-th quality characteristic among the MN quality characteristics, and let p(C) represent the quality attribute. obs C mis |Q) represents the third likelihood function, and p(Q) represents the first initial prior distribution. <lnp(C obs C mis |Q)> q(Q) This represents the expected calculation result for q(Q).

[0032] In some embodiments, the first prior distribution is: Among them, C obs Representing the N quality characteristics, C mis Let MN represent the MN quality characteristics, Q represent the quality attribute, and p(C) represent the quality property. obs C mis |Q) represents the third likelihood function, p(Q) represents the first initial prior distribution, and C s Let q(C) be any quality characteristic in the R-th level quality characteristics. s ) represents quality characteristic C s The second prior distribution of the scores.

[0033] According to another aspect of the present disclosure, a software quality assessment apparatus is provided, comprising: a first determining module configured to determine R-level quality characteristics that affect the quality attributes based on a software quality model corresponding to the quality attributes of the target software, wherein the R-level quality characteristics have a direct impact on the quality attributes, and each level of quality characteristics includes M quality characteristics, M≥1, R≥1; a second determining module configured to determine a first prior distribution of the scores of the quality attributes, and M second prior distributions of the scores of the M quality characteristics in the R-level quality characteristics; a third determining module configured to determine a posterior distribution of the scores of the quality attributes based on the first prior distribution, the M second prior distributions, and a first likelihood function of the M quality characteristics in the R-level quality characteristics; and a fourth determining module configured to determine the software quality assessment result of the target software based on the posterior distribution.

[0034] According to another aspect of the present disclosure, a software quality assessment apparatus is provided, comprising: a memory; and a processor coupled to the memory, the processor being configured to execute the method described in any of the above embodiments based on instructions stored in the memory.

[0035] According to another aspect of the present disclosure, a computer-readable storage medium is provided, including computer program instructions, wherein the computer program instructions, when executed by a processor, implement the method described in any of the above embodiments.

[0036] According to another aspect of the present disclosure, a computer program product is provided, including a computer program, wherein the computer program, when executed by a processor, implements the method described in any of the above embodiments.

[0037] In this embodiment, by identifying the R-level quality characteristics that influence the quality attributes of the target software, and determining the prior distribution of the quality attribute scores and the M prior distributions of the scores of the M quality characteristics within the R-level quality characteristics, the posterior distribution of the quality attribute scores can be determined. This posterior distribution is then used to determine the software quality assessment result of the target software. Thus, by considering the objectively existing dependency between quality characteristics and quality attributes, the posterior distribution of the quality attribute scores can be determined, objectively reflecting the probability that the target software's quality attribute scores are at different values. Furthermore, the software quality assessment result determined based on this posterior distribution can more objectively reflect the quality level of the target software, thereby improving the reliability of the software quality assessment result.

[0038] The technical solutions of this disclosure will be further described in detail below with reference to the accompanying drawings and embodiments. Attached Figure Description

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

[0040] Figure 1 This is a flowchart illustrating a software quality assessment method according to some embodiments of the present disclosure;

[0041] Figure 2 This is a schematic diagram of the structure of a Bayesian network model according to some embodiments of this disclosure;

[0042] Figure 3 This is a flowchart illustrating the process of determining M second prior distributions according to some embodiments of the present disclosure;

[0043] Figure 4A This is a flowchart illustrating some implementation methods of step 304c;

[0044] Figure 4B This is a flowchart illustrating some other implementations of step 304c;

[0045] Figure 4C This is a flowchart illustrating some implementation methods of step 304c;

[0046] Figure 5 This is a flowchart illustrating some implementation methods of step 304c;

[0047] Figure 6 This is a flowchart illustrating some implementation methods of step 304c;

[0048] Figure 7A This is a schematic flowchart illustrating the process of determining a first prior distribution according to some embodiments of the present disclosure;

[0049] Figure 7B This is a flowchart illustrating the determination of a first prior distribution according to other embodiments of this disclosure;

[0050] Figure 7C This is a flowchart illustrating the process of determining a first prior distribution according to some embodiments of the present disclosure;

[0051] Figure 8 This is a schematic diagram of the structure of a software quality assessment apparatus according to some embodiments of the present disclosure;

[0052] Figure 9 This is a schematic diagram of the structure of a software quality assessment apparatus according to other embodiments of the present disclosure. Detailed Implementation

[0053] The technical solutions of the embodiments of this disclosure will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this disclosure, and not all embodiments. Based on the embodiments of this disclosure, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this disclosure.

[0054] Unless otherwise specifically stated, the relative arrangement, numerical expressions, and values ​​of the components and steps set forth in these embodiments do not limit the scope of this disclosure.

[0055] At the same time, it should be understood that, for ease of description, the dimensions of the various parts shown in the accompanying drawings are not drawn according to actual scale.

[0056] Techniques, methods, and equipment known to those skilled in the art may not be discussed in detail, but where appropriate, such techniques, methods, and equipment should be considered part of the specification.

[0057] In all examples shown and discussed herein, any specific values ​​should be interpreted as merely exemplary and not as limitations. Therefore, other examples of exemplary embodiments may have different values.

[0058] It should be noted that similar labels and letters in the following figures indicate similar items; therefore, once an item is defined in one figure, it does not need to be discussed further in subsequent figures.

[0059] Figure 1 This is a flowchart illustrating a software quality assessment method according to some embodiments of the present disclosure.

[0060] In step 102, based on the software quality model corresponding to the quality attributes of the target software, the R-level quality characteristics that affect the quality attributes are determined.

[0061] Here, the R-th level quality characteristic has a direct impact on the quality attributes. Each level of quality characteristic includes M quality characteristics, where M ≥ 1 and R ≥ 1. It should be understood that M and R are both integers.

[0062] In some embodiments, the number of quality characteristics in different levels of quality characteristics may be different.

[0063] In some embodiments, a software quality model corresponding to the quality attributes of the target software can be selected based on the national standard GB / T 25000.10—2016 "Systems and Software Engineering - System and Software Quality Requirements and Evaluation - Part 10: System and Software Quality Models". Based on the software quality model and the characteristics of the target software, R-level quality characteristics that affect the quality attributes of the target software can be determined.

[0064] Taking the quality attributes of the target software as product quality attributes as an example, the second-level quality characteristics that directly affect the product quality attributes, based on the corresponding product quality model and the characteristics of the target software, can include quality characteristics such as functionality, information security, reliability, and usability. The first-level quality characteristics that indirectly affect the product quality attributes through the second-level quality characteristics can include quality sub-characteristics such as functional completeness, operability, and fault tolerance.

[0065] In step 104, a first prior distribution of the scores for the quality attributes is determined, and M second prior distributions of the scores for the M quality attributes in the R-th quality attribute are determined.

[0066] In some embodiments, a first prior distribution of the scores for a quality attribute can be determined based on historical scoring data of the quality attribute. Similarly, a second prior distribution of the scores for each quality characteristic in the R-th quality characteristic can be determined based on historical scoring data of that quality characteristic. In some cases, the first prior distribution and M second prior distributions can be determined in other ways, as will be further explained later.

[0067] In step 106, the posterior distribution of the quality attribute score is determined based on the first prior distribution, M second prior distributions, and the first likelihood function of the M quality characteristics in the R-th quality characteristics.

[0068] In some embodiments, a Bayesian inference algorithm can be used to determine the posterior distribution of the quality attribute ratings based on a first prior distribution, M second prior distributions, and a first likelihood function for the M quality characteristics in the R-th quality characteristics. For example, a Naive Bayes algorithm can be used to determine the posterior distribution of the quality attribute ratings based on the first prior distribution, M second prior distributions, and a first likelihood function for the M quality characteristics in the R-th quality characteristics.

[0069] In step 108, the software quality assessment result of the target software is determined based on the posterior distribution.

[0070] In some embodiments, the scores of quality attributes can be determined based on the posterior distribution, and then the software quality assessment result of the target software can be determined based on the scores of the quality attributes. For example, a correspondence between software quality levels and score intervals can be pre-defined, and then the software quality level of the target software can be determined according to the score interval to which the quality attribute score belongs and the correspondence, and the determined software quality level can be used as the software quality assessment result of the target software.

[0071] It should be understood that, for ease of description, in the embodiments of this disclosure, both mass characteristics and mass sub-characteristics are collectively referred to as mass characteristics, and probability distributions are simply referred to as distributions. For example, prior distribution is the prior probability distribution, posterior distribution is the posterior probability distribution, etc.

[0072] In the above embodiments, by identifying the R-level quality characteristics that influence the quality attributes of the target software, and determining the prior distribution of the quality attribute scores and the M prior distributions of the scores of the M quality characteristics among the R-level quality characteristics, the posterior distribution of the quality attribute scores can be determined. This posterior distribution is then used to determine the software quality assessment result of the target software. Thus, by considering the objectively existing dependency between quality characteristics and quality attributes, the posterior distribution of the quality attribute scores can be determined, objectively reflecting the probability that the target software's quality attribute scores are at different values. Furthermore, the software quality assessment result determined based on this posterior distribution can more objectively reflect the quality level of the target software, thereby improving the reliability of the software quality assessment result.

[0073] In some embodiments, the score corresponding to a posterior probability greater than a preset probability in the posterior distribution of the quality attribute scores can be determined as the quality attribute score.

[0074] In some embodiments, the score corresponding to the maximum posterior probability in the posterior distribution of the quality attribute scores can be determined as the quality attribute score. This ensures the reliability of the determined quality attribute score, thereby further improving the reliability of the software quality assessment results.

[0075] In some embodiments, when R≥2, the i-th quality characteristic has a direct impact on the (i+1)-th quality characteristic, and 1≤i≤R-1.

[0076] In some embodiments, a Bayesian network model can be established using each quality characteristic in the quality attributes and R-level quality characteristics as nodes and the dependencies between nodes as directed edges.

[0077] Figure 2 This is a schematic diagram of the structure of a Bayesian network model according to some embodiments of the present disclosure.

[0078] like Figure 2 As shown, Figure 2 The diagram schematically illustrates quality attributes and Level 2 quality characteristics. Each solid circle represents a node, where node Q represents a quality attribute, nodes T1 and T2 represent two quality characteristics in Level 2, and nodes t1, t2, t3, and t4 represent four quality characteristics in Level 1. Each unidirectional solid arrow represents a directed edge; in a pair of nodes connected by a unidirectional solid arrow, the node connected by the tail of the arrow directly influences the node connected by the arrowhead.

[0079] Thus, the Bayesian network model can intuitively represent the dependencies between quality characteristics and between quality attributes and quality characteristics, so as to combine Bayesian theory for subsequent algorithmic reasoning.

[0080] In some embodiments, a first initial prior distribution of the quality attribute ratings can be obtained, and then a first prior distribution of the quality attribute ratings can be determined based on the first initial prior distribution. For example, it can be first determined whether the first initial prior distribution meets a preset confidence level, and then the first prior distribution of the quality attribute ratings can be determined in a corresponding manner based on the determination result. This will be further explained later.

[0081] In some embodiments, a first initial prior distribution of the quality attribute's rating can be determined based on historical rating data of the quality attribute. For example, when there is sufficient historical rating data of the quality attribute, the first initial prior distribution of the quality attribute's rating can be obtained by fitting the historical rating data using a data fitting method; or, for example, when there is insufficient historical rating data of the quality attribute, the first initial prior distribution of the quality attribute's rating can be determined based on the historical rating data and the relevant experience of domain experts.

[0082] In some embodiments, M second initial prior distributions of M quality characteristics in the R-th quality characteristics can be obtained, and then M second prior distributions can be determined based on at least a portion of the M second initial prior distributions that satisfy a first preset confidence level. This will be further explained later.

[0083] In some embodiments, M second initial prior distributions for the M quality characteristics can be determined based on historical rating data for the M quality characteristics in the R-th quality characteristic. For example, when there is sufficient historical rating data for the M quality characteristics, the second initial prior distribution of the rating for each quality characteristic can be obtained by fitting the historical rating data for each quality characteristic using a data fitting method; or, for example, when there is insufficient historical rating data for the M quality characteristics, the second initial prior distribution of the rating for each quality characteristic can be determined based on the historical rating data for each quality characteristic and the relevant experience of domain experts.

[0084] It should be understood that at least a portion of the second initial prior distribution satisfies the first pre-set confidence level, indicating that at least a portion of the second initial prior distribution is credible.

[0085] In this way, based on the reliability of the first initial prior distribution and the M second initial prior distributions, the first prior distribution and the M second initial prior distributions can be determined accordingly, thereby further improving the reliability of the subsequently determined software quality assessment results.

[0086] The following examples will further illustrate how to determine the M second prior distributions.

[0087] In some embodiments, at least a portion of the second initial prior distributions include N second initial prior distributions of the scores of N quality characteristics in the R-th quality characteristics, 1≤N≤M.

[0088] Figure 3 This is a schematic flowchart illustrating the process of determining M second prior distributions according to some embodiments of the present disclosure.

[0089] In step 302, when R≥2 and 1≤N≤M-1, the N second initial prior distributions are determined as the N second prior distributions of the scores of the N quality characteristics.

[0090] It should be understood that since the N second initial prior distributions satisfy the first preset confidence level, meaning that all N second initial prior distributions are reliable, they can be directly used as the N second prior distributions for the scores of the N quality characteristics. The N second prior distributions corresponding to the N quality characteristics for which the second initial prior distributions are unreliable can be determined according to the method described in step 304.

[0091] In step 304, a second prior distribution of the score of the j-th quality characteristic among the MN quality characteristics other than the N quality characteristics in the R-th quality characteristic is determined.

[0092] Here, 1 ≤ j ≤ MN. Step 304 includes steps 304a to 304c.

[0093] In step 304a, the E quality characteristics that affect the j-th quality characteristic are determined.

[0094] Here, the E quality characteristics include the quality characteristics in the R-1 level quality characteristics, and E≥1.

[0095] In some embodiments, the E quality characteristics may further include quality characteristics from the R-level quality characteristics. For example, please refer to... Figure 2 In the illustrated embodiment, the three quality characteristics that affect quality characteristic T1 in the second-level quality characteristics may include one quality characteristic T2 in the second-level quality characteristics, and two quality characteristics t1 and t2 in the first-level quality characteristics.

[0096] In step 304b, determine the E third initial prior distributions of the scores for the E quality characteristics.

[0097] In some embodiments, E third initial prior distributions of the scores of E quality characteristics can be determined based on historical score data of E quality characteristics.

[0098] In step 304c, a second prior distribution for the score of the j-th quality characteristic is determined based on at least one of the first set of prior distributions and the second set of prior distributions.

[0099] Here, the first set of prior distributions includes F third initial prior distributions from E third initial prior distributions that satisfy the second pre-set confidence level, where 1 ≤ F ≤ E. The second set of prior distributions includes N second initial prior distributions.

[0100] In some embodiments, a second prior distribution for the score of the j-th quality characteristic can be determined based on a first set of prior distributions.

[0101] In other embodiments, a second prior distribution for the score of the j-th quality characteristic can be determined based on a second set of prior distributions.

[0102] In some other embodiments, the second prior distribution of the score for the j-th quality characteristic can be determined based on the first set of prior distributions and the second set of prior distributions.

[0103] It should be understood that, when R ≥ 2 and 1 ≤ N ≤ M-1, only a portion of the M second initial prior distributions satisfy the first pre-set confidence level. When R ≥ 2 and N = M, the M second prior distributions can be determined in other ways, which will be explained later.

[0104] Thus, when only a portion of the second initial prior distributions are reliable, for quality characteristics corresponding to unreliable second initial prior distributions, the second prior distribution of the score of the quality characteristic can be determined based on the reliable portion of the second initial prior distributions or the reliable third initial prior distribution among the third initial prior distributions that affect the score of the quality characteristic. This ensures that each second prior distribution is reliable, thereby further improving the reliability of the subsequently determined software quality assessment results.

[0105] The following describes three different ways of determining the second prior distribution of the score for the j-th quality characteristic, using some examples.

[0106] First, we introduce a method for determining the second prior distribution of the score for the j-th quality characteristic based on the first set of prior distributions.

[0107] In some embodiments, the second prior distribution of the score of the j-th quality characteristic can be determined based on the first set of prior distributions and the second initial prior distribution of the score of the j-th quality characteristic. Thus, in determining the second prior distribution of the score of the j-th quality characteristic, not only is the credible prior distribution used more sufficient, but it also incorporates the second initial prior distribution of the score of the j-th quality characteristic itself, improving the reliability of the determined second prior distribution of the score of the j-th quality characteristic, thereby improving the reliability of the subsequently determined software quality assessment results.

[0108] In some embodiments, when F = E-1, it can be done according to Figure 4AThe steps shown determine the second prior distribution of the score for the j-th quality characteristic. Figure 4A This is a flowchart illustrating some implementation methods of step 304c.

[0109] In step 402a, based on F third initial prior distributions, a second likelihood function is determined for E quality characteristics.

[0110] For example, C misj Let C1, ..., Cj be the j-th quality characteristic out of MN quality characteristics. E Let E represent the quality characteristics that affect the j-th quality characteristic. The second likelihood function for the E quality characteristics can be p(C1,…C1). E |C misj ), which represents the joint probability of the scores of E quality characteristics given the probability of the score of the j-th quality characteristic.

[0111] In step 404a, based on the second initial prior distribution and the second likelihood function of the score of the j-th quality characteristic, determine the EF third prior distributions of the scores of the EF quality characteristics other than the F quality characteristics out of the E quality characteristics.

[0112] In some embodiments, a variational Bayesian algorithm can be used to determine a third prior distribution EF=1 based on the second initial prior distribution and the second likelihood function of the score of the j-th quality characteristic.

[0113] For example, when using the variational Bayesian algorithm, in the (k+1)th iteration, where k represents the iteration number and k≥0, we can determine that EF = 1 is a third prior distribution:

[0114]

[0115] Among them, C t This indicates that among E quality characteristics, excluding F quality characteristics, there is one quality characteristic EF = 1, and C misj Let p(C1,…C1) represent the j-th quality characteristic out of MN quality characteristics. E |C misj ) represents the second likelihood function. At the k=0th iteration, q(C) misj Let 0 be the second initial prior distribution of the score for the j-th quality characteristic.

[0116] In step 406a, based on the second initial prior distribution of the score of the j-th quality characteristic, the second likelihood function, and EF third prior distributions, the second prior distribution of the score of the j-th quality characteristic is determined.

[0117] In some embodiments, a variational Bayesian algorithm may be used to determine the second prior distribution of the score of the j-th quality characteristic based on the second initial prior distribution of the score of the j-th quality characteristic, the second likelihood function, and EF third prior distributions.

[0118] For example, when using the variational Bayesian algorithm, in the (k+1)th iteration, the second prior distribution of the score for the j-th quality characteristic can be determined as follows:

[0119]

[0120] Among them, C misj Let p(C) represent the j-th quality characteristic out of MN quality characteristics. misj Let p(C1,…C1) represent the second initial prior distribution of the score for the j-th quality characteristic. E |C misj ) represents the second likelihood function, q(C) t ) k+1 EF = 1 is a third prior distribution determined in formula (1).

[0121] It should be understood that when the variational Bayesian algorithm converges, the result of formula (2) is the second prior distribution q(C) of the score of the j-th quality characteristic. misj ).

[0122] Thus, with F = E⁻¹, it can be ensured that each second prior distribution is reliable, thereby improving the reliability of the subsequently determined software quality assessment results.

[0123] In some embodiments, when 1≤F≤E-2, it can be done according to Figure 4B The steps shown determine the second prior distribution of the score for the j-th quality characteristic. Figure 4B This is a flowchart illustrating some other implementations of step 304c.

[0124] In 402b, based on F third initial prior distributions, a second likelihood function is determined for E quality characteristics.

[0125] For example, the second likelihood function for E quality characteristics can be p(C1,…C…). E |C misj ).

[0126] Step 402b can be implemented similarly to step 402a above. For details, please refer to the relevant description in step 402a above, which will not be repeated here.

[0127] In 404b, based on the second initial prior distribution and the second likelihood function of the score of the j-th quality characteristic, the first joint distribution of the scores of the EF quality characteristics is determined.

[0128] For example, when using the variational Bayesian algorithm, formula (1) can be similarly applied to determine the first joint distribution of the scores for the EF quality characteristics:

[0129]

[0130] Among them, C1,…C E-F C represents the EF quality characteristics excluding the F quality characteristics out of the E quality characteristics. misj Let p(C1,…C1) represent the j-th quality characteristic out of MN quality characteristics. E |C misj ) represents the second likelihood function, q(C) misj Let be the second prior distribution of the score for the j-th quality characteristic, <4np(C1,…C E |C misj )> q(Cmisj) Represents q(C) misj The expected calculation result.

[0131] In 406b, the second prior distribution of the score of the j-th quality characteristic is determined based on the second initial prior distribution, the second likelihood function, and the first joint distribution of the score of the j-th quality characteristic.

[0132] For example, using the variational Bayesian algorithm, the second prior distribution of the score for the j-th quality characteristic can be determined as follows:

[0133]

[0134] Among them, C misj Let p(C) represent the j-th quality characteristic out of MN quality characteristics. misj Let p(C1,…C1) represent the second initial prior distribution of the score for the j-th quality characteristic. E |C misj ) denotes the second likelihood function, q(C1,…C E-F ) is the first joint distribution of the scores of the EF quality characteristics determined in formula (3).

[0135] Thus, under the condition that 1≤F≤E-2, it can be ensured that each second prior distribution is reliable, thereby further improving the reliability of the subsequently determined software quality assessment results.

[0136] In some embodiments, when F = E, it can be done according to Figure 4C The steps shown determine the second prior distribution of the score for the j-th quality characteristic. Figure 4C This is a flowchart illustrating some implementation methods of step 304c.

[0137] In 402c, based on F third initial prior distributions, the second likelihood function for E quality characteristics is determined.

[0138] For example, the second likelihood function for E quality characteristics can be p(C1,…C…). E |C misj ).

[0139] Step 402c can be implemented similarly to the aforementioned step 402a. For details, please refer to the relevant description in the aforementioned step 402a, which will not be repeated here.

[0140] In 404c, based on the second initial prior distribution of the score of the j-th quality characteristic, the second likelihood function, and any third initial prior distribution, the second prior distribution of the score of the j-th quality characteristic is determined.

[0141] For example, using the variational Bayesian algorithm, the second prior distribution of the score for the j-th quality characteristic can be determined as follows:

[0142]

[0143] Among them, C misj Let C represent the j-th quality characteristic out of MN quality characteristics. r Let q(C) be any one of the E quality characteristics. r ) represents quality characteristic C N The third initial prior distribution of the rating, p(C) misj Let p(C1,…C1) represent the second initial prior distribution of the score for the j-th quality characteristic. E |C misj ) represents the second likelihood function.

[0144] It should be understood that, in the case of F=E, since any third initial prior distribution satisfies the second pre-set confidence level, the E third initial prior distributions can be used as the E third prior distributions for the scores of the E quality characteristics.

[0145] Thus, when F=E, it can be ensured that each second prior distribution is reliable, thereby further improving the reliability of the subsequently determined software quality assessment results.

[0146] Next, we will introduce a method for determining the score of the j-th quality characteristic based on the second set of prior distributions.

[0147] Figure 5 This is a flowchart illustrating some implementation methods of step 304c.

[0148] In step 502, based on the second set of prior distributions, a third likelihood function is determined for the M quality characteristics in the R-th quality characteristics.

[0149] For example, C obs C represents the N quality characteristics in the R-th level quality characteristics. mis Let M represent the M quality characteristics in the R-th level quality characteristics, and Q represent the quality attribute. The third likelihood function for the M quality characteristics in the R-th level quality characteristics can be p(C obs C mis |Q) represents the joint probability of the scores of M quality characteristics in the R-th quality characteristic given the probability of the scores of a quality attribute.

[0150] In step 504, based on the third likelihood function and the first prior distribution, the second prior distribution of the score for the j-th quality characteristic is determined.

[0151] In some embodiments, step 504 can be implemented in different ways depending on the value of N.

[0152] In some embodiments, when 1≤N≤M-2, step 504 can be implemented as follows.

[0153] First, based on the third likelihood function and the first prior distribution, the second joint distribution of the scores of the MN quality characteristics in the R-level quality characteristics is determined.

[0154] For example, using the variational Bayesian algorithm, the second joint distribution of the scores for MN quality characteristics can be determined as follows:

[0155]

[0156] Among them, C obs C represents the N quality characteristics in the R-th level quality characteristics. mis C represents the MN quality characteristics in the R-th quality characteristic group, excluding the N quality characteristics. misj Let Q represent the j-th quality characteristic out of these MN quality characteristics, and let p(C) represent the quality attribute. obs C mis |Q) represents the third likelihood function, and q(Q) represents the first prior distribution. <lnp(C obs C mis |Q)> q(Q) This represents the expected calculation result for q(Q).

[0157] Then, based on the second joint distribution, the second prior distribution of the score for the j-th quality characteristic is determined.

[0158] For example, using the variational Bayesian algorithm, the second prior distribution of the score for the j-th quality characteristic can be determined as follows:

[0159]

[0160] Wherein, q(C mis1 ,…C misj ,…C misM-N ) represents the second joint distribution of the scores for the MN quality characteristics determined in formula (6). q(C mis1 ) is for the second joint distribution q(C mis1 ,…C misj ,…C misM-N ) except C mis1 Integrating the other variables in sequence yields q(C). mis2 )…q(C misj-1 ), q(C misj+1 )…q(C misM-N The method of obtaining q(C) mis1 The method is similar and will not be repeated here.

[0161] Thus, in the case of 1≤N≤M-2, it can be ensured that each second prior distribution is reliable, thereby improving the reliability of the subsequently determined software quality assessment results.

[0162] In some embodiments, when N = M-1, a variational Bayesian algorithm can be used to determine the second prior distribution of the score for the j-th quality characteristic based on the third likelihood function and the first prior distribution.

[0163] For example, using the variational Bayesian algorithm, the second prior distribution of the score for the j-th quality characteristic can be determined as follows:

[0164]

[0165] Among them, C obs C represents the N quality characteristics in the R-th level quality characteristics. mis C represents the MN quality characteristics in the R-th quality characteristic group, excluding the N quality characteristics. misj Let Q represent the j-th quality characteristic out of these MN quality characteristics, and let p(C) represent the quality attribute. obs C mis |Q) represents the third likelihood function, and q(Q) represents the first prior distribution.

[0166] It should be understood that the M quality characteristics in the R-level quality characteristics include C obs and C mis In this embodiment of the disclosure, the MN quality characteristics C in the R-th quality characteristic are... misIncluding C mis1 ,…C misj ,…C misM-N C in the text mis and C mis1 ,…C misj ,…C misM-N Each represents one of the MN quality characteristics in the R-level quality characteristics.

[0167] Thus, even with N=M-1, it can be ensured that each second prior distribution is reliable, thereby further improving the reliability of the subsequently determined software quality assessment results.

[0168] Next, we will introduce a method for determining the second prior distribution of the score for the j-th quality characteristic based on the first set of prior distributions and the second set of prior distributions.

[0169] Figure 6 This is a flowchart illustrating some implementation methods of step 304c.

[0170] In step 602, based on the first set of prior distributions and the second initial prior distribution of the score of the j-th quality characteristic, the first intermediate prior distribution of the score of the j-th quality characteristic is determined.

[0171] Step 602 can be referred to Figures 4A to 4C The method shown is implemented similarly; for details, please refer to [link / reference]. Figures 4A to 4C The relevant descriptions in the document will not be repeated here.

[0172] In step 604, based on the second set of prior distributions, a third likelihood function is determined for the M quality characteristics in the R-th quality characteristics.

[0173] In step 606, based on the third likelihood function and the first prior distribution, the second intermediate prior distribution of the score for the j-th quality characteristic is determined.

[0174] Steps 604 to 606 can be referred to Figure 5 The method shown is implemented similarly; for details, please refer to [link / reference]. Figure 5 The relevant descriptions in the document will not be repeated here.

[0175] In step 608, the second prior distribution that satisfies the third preset confidence level among the first intermediate prior distribution and the second intermediate prior distribution is determined as the score of the j-th quality characteristic.

[0176] For example, if only the first intermediate prior distribution among the first and second intermediate prior distributions satisfies the third preset confidence level, then the first intermediate prior distribution can be determined as the second prior distribution for the score of the j-th quality characteristic.

[0177] For example, if only the second intermediate prior distribution among the first and second intermediate prior distributions satisfies the third preset confidence level, then the second intermediate prior distribution can be determined as the second prior distribution for the score of the j-th quality characteristic.

[0178] For example, if both the first intermediate prior distribution and the second intermediate prior distribution satisfy the third preset confidence level, then either the first intermediate prior distribution or the second intermediate prior distribution can be determined as the second prior distribution for the score of the j-th quality characteristic (for example, if the confidence level of the first intermediate prior distribution is higher than the confidence level of the second intermediate prior distribution, then the first intermediate prior distribution can be determined as the second prior distribution for the score of the j-th quality characteristic).

[0179] Thus, given two intermediate prior distributions for determining the score of the j-th quality characteristic based on two different methods, the intermediate prior distribution that meets the requirements can be selected from these two distributions by combining the corresponding preset confidence level as the second prior distribution for the score of the j-th quality characteristic. This further ensures that each second prior distribution is reliable, thereby further improving the reliability of the subsequently determined software quality assessment results.

[0180] In some embodiments, when R≥2 and N=M, the N second initial prior distributions can be determined as M second prior distributions.

[0181] It should be understood that, in the case of N=M, since all N=M second initial prior distributions satisfy the first pre-set confidence level, that is, all M second initial prior distributions are reliable, therefore, the M second initial prior distributions can be used as M second prior distributions.

[0182] In some embodiments, when R = 1 and N = M, the N second initial prior distributions can be determined as M second prior distributions.

[0183] In some embodiments, when R = 1 and 1 ≤ N ≤ M-1, it is possible to combine Figure 3 and Figure 5 The method shown here is similar to determine the M second prior distributions, and will not be repeated here.

[0184] The following examples will further illustrate how the first prior distribution is determined.

[0185] In some embodiments, if the first initial prior distribution satisfies the fourth preset confidence level, the first initial prior distribution can be determined as the first prior distribution.

[0186] In other embodiments, if the first initial prior distribution does not meet the fourth preset confidence level, the first prior distribution can be determined based on at least a portion of the second initial prior distribution and the first initial prior distribution. Thus, even if the first initial prior distribution is unreliable, the determined first prior distribution can be ensured to be reliable, thereby improving the reliability of the subsequently determined software quality assessment results.

[0187] In some embodiments, at least a portion of the second initial prior distributions include N second initial prior distributions of the scores of N quality characteristics in the R-th quality characteristics, 1≤N≤M.

[0188] In some embodiments, when N = M-1, it can be done according to Figure 7A The steps shown determine the first prior distribution. Figure 7A This is a schematic flowchart illustrating the process of determining a first prior distribution according to some embodiments of the present disclosure.

[0189] In step 702a, based on N second initial prior distributions, a third likelihood function is determined for M quality characteristics in the R-th quality characteristics.

[0190] For example, the third likelihood function for the M quality characteristics in the R-th level quality characteristics can be p(C obs C mis |Q).

[0191] Step 702a can be implemented similarly to step 502. For details, please refer to the relevant description in step 502, which will not be repeated here.

[0192] In step 704a, based on the third likelihood function and the first initial prior distribution, MN second prior distributions are determined for the scores of the MN quality characteristics other than the N quality characteristics in the R-level quality characteristics.

[0193] In some embodiments, the variational Bayesian algorithm can be used to determine MN=1 second prior distributions based on the third likelihood function and the first initial prior distribution.

[0194] For example, when using the variational Bayesian algorithm, in the (k+1)th iteration, where k represents the iteration number and k≥0, we can determine MN=1 second prior distributions as follows:

[0195]

[0196] Among them, C obs C represents the N quality characteristics in the R-th level quality characteristics. mis Let MN represent the MN quality characteristics other than the N quality characteristics in the R-th quality characteristic group, and let Q represent the quality attribute. p(C obs Cmis |Q) represents the third likelihood function. At the k=0th iteration, q(Q)0 is the first initial prior distribution of the quality characteristic score.

[0197] In step 706a, the first prior distribution is determined based on the third likelihood function, the first initial prior distribution, and MN second prior distributions.

[0198] In some embodiments, a variational Bayesian algorithm can be used to determine the first prior distribution based on the third likelihood function, the first initial prior distribution, and MN=1 second prior distributions.

[0199] For example, when using the variational Bayesian algorithm, in the (k+1)th iteration, where k represents the iteration number and k≥0, the first prior distribution can be determined as:

[0200]

[0201] Among them, C obs C represents the N quality characteristics in the R-th level quality characteristics. mis Let MN be the MN quality characteristics other than N quality characteristics in the R-th quality characteristic group, Q be the quality attribute, p(Q) be the first initial prior distribution of the quality characteristic scores, and p(C) be the quality characteristic score distribution. obs C mis |Q) represents the third likelihood function. At the k=0th iteration, q(Q)0 is p(Q). q(C mis ) k+1 MN = 1 is a second prior distribution determined in formula (9).

[0202] It should be understood that when the variational Bayes algorithm converges, the result of formula (10) is the first prior distribution q(Q) of the quality attribute rating.

[0203] Thus, with N=M-1, the reliability of the determined first prior distribution can be ensured, thereby improving the reliability of the subsequently determined software quality assessment results.

[0204] In some embodiments, when 1≤N≤M-2, it can be done according to Figure 7B The steps shown determine the first prior distribution. Figure 7B This is a schematic flowchart illustrating the determination of a first prior distribution according to other embodiments of this disclosure.

[0205] In step 702b, based on N second initial prior distributions, a third likelihood function is determined for M quality characteristics in the R-th quality characteristics.

[0206] For example, the third likelihood function for the M quality characteristics in the R-th level quality characteristics can be p(C obsC mis |Q).

[0207] Step 702b can be implemented similarly to step 502. For details, please refer to the relevant description in step 502, which will not be repeated here.

[0208] In step 704b, based on the third likelihood function and the first initial prior distribution, the third joint distribution of the scores of the MN quality characteristics is determined.

[0209] In some embodiments, a variational Bayesian algorithm can be used to determine the third joint distribution of the scores of MN quality characteristics based on the third likelihood function and the first initial prior distribution.

[0210] For example, when using the variational Bayesian algorithm, formula (9) can be similarly applied to determine the third joint distribution of the scores for the MN quality characteristics:

[0211]

[0212] Among them, C obs C represents the N quality characteristics in the R-th level quality characteristics. mis C represents the MN quality characteristics in the R-th quality characteristic group, excluding the N quality characteristics. misj Let Q represent the j-th quality characteristic out of these MN quality characteristics, and let p(C) represent the quality attribute. obs C mis |Q) represents the third likelihood function, and q(Q) represents the first prior distribution of the quality attribute rating. <lnp(C obs C mis |Q)> q(Q) This represents the expected calculation result for q(Q).

[0213] It should be noted that, when using the variational Bayes algorithm, although the second joint distribution shown in formula (6) and the third joint distribution shown in formula (11) have the same expression, their specific results are not the same.

[0214] In step 706b, the first prior distribution is determined based on the third likelihood function, the first initial prior distribution, and the third joint distribution.

[0215] In some embodiments, a variational Bayesian algorithm can be used to determine the first prior distribution based on the third likelihood function, the first initial prior distribution, and the third joint distribution.

[0216] For example, when using the variational Bayesian algorithm, the first prior distribution can be determined as:

[0217]

[0218] Among them, C obs C represents the N quality characteristics in the R-th level quality characteristics. mis C represents the MN quality characteristics in the R-th quality characteristic group, excluding the N quality characteristics. misj Let C represent the j-th quality characteristic out of MN quality characteristics, Q represent the quality attribute, p(Q) represent the first initial prior distribution of the quality characteristic ratings, and p(C) represent the initial prior distribution of the quality characteristic ratings. obs C mis |Q) represents the third likelihood function, q(C) mis1 ,…C misj ,…C misM-N ) is the third joint distribution of the scores of the MN quality characteristics determined in formula (11).

[0219] Thus, in the case of 1≤N≤M-2, the reliability of the determined first prior distribution can be ensured, thereby further improving the reliability of the subsequently determined software quality assessment results.

[0220] In some embodiments, when N = M, it can be done according to Figure 7C The steps shown determine the first prior distribution. Figure 7C This is a schematic flowchart illustrating the process of determining a first prior distribution according to some embodiments of the present disclosure.

[0221] In step 702c, based on N second initial prior distributions, a third likelihood function is determined for M quality characteristics in the R-th quality characteristics.

[0222] For example, the third likelihood function for the M quality characteristics in the R-th level quality characteristics can be p(C obs C mis |Q).

[0223] Step 702c can be implemented similarly to step 502. For details, please refer to the relevant description in step 502, which will not be repeated here.

[0224] In step 704c, the first prior distribution is determined based on the third likelihood function, the first initial prior distribution, and any second initial prior distribution.

[0225] In some embodiments, a variational Bayesian algorithm can be used to determine the first prior distribution based on the third likelihood function, the first initial prior distribution, and any second initial prior distribution.

[0226] For example, when using the variational Bayesian algorithm, the first prior distribution can be determined as:

[0227]

[0228] Among them, Cobs C represents the N quality characteristics in the R-th level quality characteristics. mis Let M represent the MN quality characteristics other than the N quality characteristics in the R-th quality characteristic group, and let Q represent the quality attribute. s Let q(C) be any quality characteristic in the R-th level quality characteristics. s ) represents quality characteristic C s The second prior distribution of the ratings, p(C obs C mis |Q) represents the third likelihood function.

[0229] Thus, even when N=M, the reliability of the determined first prior distribution can be ensured, thereby further improving the reliability of the subsequently determined software quality assessment results.

[0230] It should be noted that the first, second, third, and fourth pre-set confidence levels mentioned above can be the same or different. Appropriate confidence levels can be adopted based on the specific needs of the software quality assessment, and this disclosure does not impose any limitations on this.

[0231] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatus embodiments, since they largely correspond to the method embodiments, the descriptions are relatively simple; relevant parts can be referred to the descriptions of the method embodiments.

[0232] Figure 8 This is a schematic diagram of the structure of a software quality assessment apparatus according to some embodiments of the present disclosure.

[0233] like Figure 8 As shown, the software quality assessment device 800 includes a first determining module 801, a second determining module 802, a third determining module 803, and a fourth determining module 804.

[0234] The first determining module 801 can be configured to determine R-level quality characteristics that affect the quality attributes based on a software quality model corresponding to the quality attributes of the target software. The R-level quality characteristics have a direct impact on the quality attributes, and each level of quality characteristics includes M quality characteristics, where M≥1 and R≥1.

[0235] The second determining module 802 can be configured to determine a first prior distribution of the scores of the quality attributes, and M second prior distributions of the scores of the M quality attributes in the R-level quality attributes.

[0236] The third determining module 803 can be configured to determine the posterior distribution of the score of the quality attribute based on the first prior distribution, M second prior distributions, and the first likelihood function of the M quality characteristics in the R-th quality characteristics.

[0237] The fourth determination module 804 can be configured to determine the software quality assessment results of the target software based on the posterior distribution.

[0238] Figure 9 This is a schematic diagram of the structure of a software quality assessment apparatus according to other embodiments of the present disclosure.

[0239] like Figure 9 As shown, the software quality assessment apparatus 900 includes a memory 901 and a processor 902 coupled to the memory 901. The processor 902 is configured to execute the method of any of the foregoing embodiments based on instructions stored in the memory 901.

[0240] The memory 901 may include, for example, system memory, fixed non-volatile storage media, etc. The system memory may store, for example, an operating system, application programs, a boot loader, and other programs.

[0241] The software quality assessment device 900 may also include an input / output interface 903, a network interface 904, and a storage interface 905. These interfaces 903, 904, and 905, as well as the memory 901 and processor 902, can be connected via, for example, a bus 906. The input / output interface 903 provides a connection interface for input / output devices such as monitors, mice, keyboards, and touchscreens. The network interface 904 provides a connection interface for various networked devices. The storage interface 905 provides a connection interface for external storage devices such as SD cards and USB flash drives.

[0242] This disclosure also provides a computer-readable storage medium including computer program instructions that, when executed by a processor, implement the method of any of the above embodiments.

[0243] This disclosure also provides a computer program product, including a computer program, wherein when the computer program is executed by a processor, it implements the method of any of the above embodiments.

[0244] The embodiments of this disclosure have now been described in detail. To avoid obscuring the concept of this disclosure, some details known in the art have not been described. Those skilled in the art can fully understand how to implement the technical solutions disclosed herein based on the above description.

[0245] Those skilled in the art will understand that embodiments of this disclosure can be provided as methods, systems, or computer program products. Therefore, this disclosure can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this disclosure can take the form of a computer program product embodied on one or more computer-usable non-transitory storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0246] This disclosure is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that the functions specified in one or more flowchart illustrations and / or one or more blocks in a block diagram can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate functions for implementing the functions in the flowchart illustrations. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0247] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0248] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0249] While specific embodiments of this disclosure have been described in detail by way of examples, those skilled in the art should understand that the examples are for illustrative purposes only and not intended to limit the scope of this disclosure. Those skilled in the art should understand that modifications can be made to the above embodiments or equivalent substitutions can be made to some technical features without departing from the scope and spirit of this disclosure. The scope of this disclosure is defined by the appended claims.

Claims

1. A software quality assessment method, comprising: Based on the software quality model corresponding to the quality attributes of the target software, R-level quality characteristics that affect the quality attributes are determined. The R-level quality characteristics have a direct impact on the quality attributes. Each level of quality characteristics includes M quality characteristics, where M≥1 and R≥1. Determine a first prior distribution of the scores for the quality attribute, and M second prior distributions of the scores for the M quality characteristics in the R-th quality characteristic; Based on the first prior distribution, the M second prior distributions, and the first likelihood function of the M quality characteristics in the R-th quality characteristics, determine the posterior distribution of the score of the quality attribute; The software quality assessment result of the target software is determined based on the posterior distribution. The first prior distribution for determining the scores of the quality attributes, and the M second prior distributions for the scores of the M quality characteristics in the R-th quality characteristic, include: Obtain the first initial prior distribution of the scores of the quality attribute, and the M second initial prior distributions of the scores of the M quality characteristics in the R-th quality characteristic. Based on the first initial prior distribution, determine the first prior distribution; Based on at least a portion of the second initial prior distributions that satisfy the first preset confidence level, the M second initial prior distributions are determined, wherein the at least a portion of the second initial prior distributions include N second initial prior distributions of the scores of N quality characteristics in the R-th quality characteristic, 1≤N≤M. Determining the M second prior distributions based on at least a portion of the second initial prior distributions that satisfy a first preset confidence level includes: In response to R≥2 and 1≤N≤M-1, the N second initial prior distributions are determined as the N second prior distributions of the scores of the N quality characteristics; Based on the N second initial prior distributions, or the third initial prior distribution of the quality characteristics that affect the j-th quality characteristic among the MN quality characteristics other than the N quality characteristics, determine the second prior distribution of the score of the j-th quality characteristic, 1≤j≤MN.

2. The method according to claim 1, wherein, When R≥2, the i-th quality characteristic has a direct impact on the (i+1)-th quality characteristic, and 1≤i≤R-1. The second prior distribution for determining the score of the j-th quality characteristic includes: Identify E quality characteristics that affect the j-th quality characteristic, wherein the E quality characteristics include the quality characteristics in the (R-1)-th level quality characteristics, and E≥1; Determine the E third initial prior distributions of the scores for the E quality characteristics; Based on at least one of the first set of prior distributions and the second set of prior distributions, a second prior distribution for the score of the j-th quality characteristic is determined. The first set of prior distributions includes F third initial prior distributions among the E third initial prior distributions that satisfy the second preset confidence level, where 1 ≤ F ≤ E. The second set of prior distributions includes the N second initial prior distributions.

3. The method according to claim 2, wherein, The second prior distribution for determining the score of the j-th quality characteristic based on at least one of the first and second prior distributions includes: Based on the first set of prior distributions and the second initial prior distribution of the score of the j-th quality characteristic, determine the second prior distribution of the score of the j-th quality characteristic.

4. The method according to claim 3, wherein, The second prior distribution for determining the score of the j-th quality characteristic, based on the first set of prior distributions and the second initial prior distribution of the score of the j-th quality characteristic, includes: Given F = E⁻¹, a second likelihood function is determined for the E quality characteristics based on the F third initial prior distributions. Based on the second initial prior distribution of the score of the j-th quality characteristic and the second likelihood function, determine the EF third prior distributions of the scores of the EF quality characteristics other than the F quality characteristics among the E quality characteristics. Based on the second initial prior distribution of the score of the j-th quality characteristic, the second likelihood function, and the EF third prior distributions, determine the second prior distribution of the score of the j-th quality characteristic.

5. The method according to claim 3, wherein, The second prior distribution for determining the score of the j-th quality characteristic, based on the first set of prior distributions and the second initial prior distribution of the score of the j-th quality characteristic, includes: If 1 ≤ F ≤ E-2, a second likelihood function is determined for the E quality characteristics based on the F third initial prior distributions; Based on the second initial prior distribution of the score of the j-th quality characteristic and the second likelihood function, determine the first joint distribution of the scores of the EF quality characteristics; Based on the second initial prior distribution of the score of the j-th quality characteristic, the second likelihood function, and the first joint distribution, a second prior distribution of the score of the j-th quality characteristic is determined.

6. The method according to claim 3, wherein, The second prior distribution for determining the score of the j-th quality characteristic, based on the first set of prior distributions and the second initial prior distribution of the score of the j-th quality characteristic, includes: Given F = E, a second likelihood function is determined for the E quality characteristics based on the F third initial prior distributions. Based on the second initial prior distribution of the score of the j-th quality characteristic, the second likelihood function, and any third initial prior distribution, determine the second prior distribution of the score of the j-th quality characteristic.

7. The method according to claim 3, wherein, The second prior distribution for determining the score of the j-th quality characteristic, based on the first set of prior distributions and the second initial prior distribution of the score of the j-th quality characteristic, includes: Based on the first set of prior distributions and the second initial prior distribution of the score of the j-th quality characteristic, determine the first intermediate prior distribution of the score of the j-th quality characteristic. Based on the second set of prior distributions, determine the third likelihood function for the M quality characteristics in the R-th quality characteristics; Based on the third likelihood function and the first prior distribution, a second intermediate prior distribution for the score of the j-th quality characteristic is determined; The second prior distribution is determined as the score of the j-th quality characteristic by the one of the first intermediate prior distribution and the second intermediate prior distribution that satisfies the third preset confidence level.

8. The method according to claim 2, wherein, The second prior distribution for determining the score of the j-th quality characteristic based on at least one of the first and second prior distributions includes: Based on the second set of prior distributions, determine the third likelihood function for the M quality characteristics in the R-th quality characteristics; Based on the third likelihood function and the first prior distribution, a second prior distribution for the score of the j-th quality characteristic is determined.

9. The method according to claim 8, wherein, The second prior distribution for determining the score of the j-th quality characteristic based on the third likelihood function and the first prior distribution includes: In the case of 1≤N≤M-2, based on the third likelihood function and the first prior distribution, a second joint distribution of the scores of the MN quality characteristics is determined; Based on the second joint distribution, a second prior distribution for the score of the j-th quality characteristic is determined.

10. The method according to claim 8, wherein, The second prior distribution for determining the score of the j-th quality characteristic based on the third likelihood function and the first prior distribution includes: When N = M-1, a second prior distribution for the score of the j-th quality characteristic is determined based on the third likelihood function and the first prior distribution.

11. The method according to claim 2, wherein, The E quality characteristics also include the quality characteristics in the R-level quality characteristics.

12. The method according to any one of claims 2-11, wherein, Determining the M second prior distributions based on at least a portion of the second initial prior distributions that satisfy a first preset confidence level includes: When R≥2 and N=M, the N second initial prior distributions are determined as the M second prior distributions.

13. The method according to claim 1, wherein, Determining the first prior distribution based on the first initial prior distribution includes: If the first initial prior distribution does not meet the fourth preset confidence level, the first prior distribution is determined based on the at least part of the second initial prior distribution and the first initial prior distribution.

14. The method according to claim 13, wherein, The at least partial second initial prior distribution includes N second initial prior distributions of the scores of N quality characteristics in the R-th quality characteristic, 1≤N≤M. Determining the first prior distribution based on the at least partial second initial prior distribution and the first initial prior distribution includes: In the case of N = M-1, based on the N second initial prior distributions, a third likelihood function is determined for the M quality characteristics in the R-th quality characteristics; Based on the third likelihood function and the first initial prior distribution, determine MN second prior distributions for the scores of MN quality characteristics other than the N quality characteristics in the R-level quality characteristics; The first prior distribution is determined based on the third likelihood function, the first initial prior distribution, and the MN second prior distributions.

15. The method according to claim 13, wherein, The at least partial second initial prior distribution includes N second initial prior distributions of the scores of N quality characteristics in the R-th quality characteristic, 1≤N≤M. Determining the first prior distribution based on the at least partial second initial prior distribution and the first initial prior distribution includes: In the case of 1≤N≤M-2, based on the N second initial prior distributions, a third likelihood function is determined for the M quality characteristics in the R-th quality characteristics; Based on the third likelihood function and the first initial prior distribution, a third joint distribution of the scores of the MN quality characteristics is determined; The first prior distribution is determined based on the third likelihood function, the first initial prior distribution, and the third joint distribution.

16. The method according to claim 13, wherein, The at least partial second initial prior distribution includes N second initial prior distributions of the scores of N quality characteristics in the R-th quality characteristic, 1≤N≤M. Determining the first prior distribution based on the at least partial second initial prior distribution and the first initial prior distribution includes: When N = M, based on the N second initial prior distributions, a third likelihood function is determined for the M quality characteristics in the R-th quality characteristics; The first prior distribution is determined based on the third likelihood function, the first initial prior distribution, and any second initial prior distribution.

17. The method according to any one of claims 13-16, wherein, Determining the first prior distribution based on the first initial prior distribution includes: If the first initial prior distribution satisfies the fourth preset confidence level, the first initial prior distribution is determined as the first prior distribution.

18. The method according to claim 1, wherein, The software quality assessment results determined based on the posterior distribution include: The score of the quality attribute is determined based on the posterior distribution; The software quality assessment result of the target software is determined based on the scores of the aforementioned quality attributes.

19. The method according to claim 18, wherein, The determination of the score for the quality attribute based on the posterior distribution includes: The score corresponding to a posterior probability greater than a preset probability in the posterior distribution is determined as the score of the quality attribute.

20. The method according to claim 18, wherein, The determination of the score for the quality attribute based on the posterior distribution includes: The score corresponding to the maximum posterior probability in the posterior distribution is determined as the score of the quality attribute.

21. The method according to claim 9, wherein: The second joint distribution is: The second prior distribution of the score for the j-th quality characteristic is: Among them, C obs Representing the N quality characteristics, C mis Representing the MN quality characteristics, C misj Let Q represent the j-th quality characteristic among the MN quality characteristics, and let p(C) represent the quality attribute. obs C mis |Q) represents the third likelihood function, and q(Q) represents the first prior distribution. <lnp(C obs C mis |Q)> q(Q) This represents the expected calculation result for q(Q).

22. The method of claim 10, wherein: The second prior distribution of the score for the j-th quality characteristic is: Among them, C obs Representing the N quality characteristics, C mis Representing the MN quality characteristics, C misj Let Q represent the j-th quality characteristic among the MN quality characteristics, and let p(C) represent the quality attribute. obs C mis |Q) represents the third likelihood function, and q(Q) represents the first prior distribution.

23. The method according to claim 14, wherein: In the (k+1)th iteration, the MN second prior distributions are: The first prior distribution is: Among them, C obs Representing the N quality characteristics, C mis Let MN represent the MN quality characteristics, Q represent the quality attribute, and p(C) represent the quality property. obs C mis |Q) represents the third likelihood function, p(Q) represents the first initial prior distribution, k represents the iteration number, k≥0, and at the k=0th iteration, q(Q) + Let p(Q) be the value.

24. The method of claim 15, wherein: The third joint distribution is: The first prior distribution is: Among them, C obs Representing the N quality characteristics, C mis Representing the MN quality characteristics, C misj Let Q represent the j-th quality characteristic among the MN quality characteristics, and let p(C) represent the quality attribute. obs C mis |Q) represents the third likelihood function, and p(Q) represents the first initial prior distribution. <lnp(C obs C mis |Q)> q(Q) This represents the expected calculation result for q(Q).

25. The method according to claim 16, wherein: The first prior distribution is: Among them, C obs Representing the N quality characteristics, C mis Let MN represent the MN quality characteristics, Q represent the quality attribute, and p(C) represent the quality property. obs C mis |Q) represents the third likelihood function, p(Q) represents the first initial prior distribution, and C s Let q(C) be any quality characteristic in the R-th level quality characteristics. s ) represents quality characteristic C s The second prior distribution of the scores.

26. A software quality assessment device, comprising: The first determining module is configured to determine R-level quality characteristics that affect the quality attributes based on a software quality model corresponding to the quality attributes of the target software. The R-level quality characteristics have a direct impact on the quality attributes. Each level of quality characteristics includes M quality characteristics, where M≥1 and R≥1. The second determining module is configured to determine a first prior distribution of the scores of the quality attribute, and M second prior distributions of the scores of the M quality characteristics in the R-level quality characteristics. The third determining module is configured to determine the posterior distribution of the score of the quality attribute based on the first prior distribution, the M second prior distributions, and the first likelihood function of the M quality characteristics in the R-level quality characteristics; The fourth determining module is configured to determine the software quality assessment result of the target software based on the posterior distribution. The second determining module acquires a first initial prior distribution of the scores of the quality attributes and M second initial prior distributions of the scores of M quality characteristics in the R-th quality characteristics. Based on the first initial prior distribution, it determines the first prior distribution. Based on at least a portion of the second initial prior distributions that satisfy a first preset confidence level, it determines the M second prior distributions, wherein the at least a portion of the second initial prior distributions include N second initial prior distributions of the scores of N quality characteristics in the R-th quality characteristics, 1≤N≤M. In response to R≥2 and 1≤N≤M-1, it determines the N second initial prior distributions as N second prior distributions of the scores of the N quality characteristics. Based on the N second initial prior distributions, or a third initial prior distribution of the quality characteristics that affect the j-th quality characteristic among the MN quality characteristics other than the N quality characteristics, it determines the second prior distribution of the score of the j-th quality characteristic, 1≤j≤MN.

27. A software quality assessment device, comprising: Memory; as well as A processor coupled to the memory is configured to execute the method of any one of claims 1-25 based on instructions stored in the memory.

28. A computer-readable storage medium comprising computer program instructions, wherein, When the computer program instructions are executed by the processor, they implement the method described in any one of claims 1-25.

29. A computer program product comprising a computer program, wherein, When the computer program is executed by a processor, it implements the method described in any one of claims 1-25.