A software quality measurement method based on fermatean fuzzy PROMETHEE and quantum particle swarm optimization

CN121579324BActive Publication Date: 2026-05-29JIANGXI UNIVERSITY OF FINANCE AND ECONOMICS

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
JIANGXI UNIVERSITY OF FINANCE AND ECONOMICS
Filing Date
2025-12-11
Publication Date
2026-05-29

AI Technical Summary

Technical Problem

Existing software quality evaluation methods lack adaptive learning capabilities in weight determination. Traditional fuzzy sets cannot accurately characterize complex fuzzy information, and traditional ranking methods cannot handle non-compensatory relationships between indicators, resulting in inaccurate software quality evaluation.

Method used

By employing Fermatean fuzzy PROMETHEE and quantum particle swarm optimization algorithms, and through the construction of Fermatean fuzzy matter elements, adaptive learning of quantum particle swarm optimization weights, and PROMETHEE preference ranking, a comprehensive evaluation of software quality is achieved.

Benefits of technology

It significantly expands the uncertainty representation space, can adaptively adjust weights, accurately characterize complex fuzzy information, handle non-compensatory relationships between indicators, and improve the scientificity and accuracy of software quality evaluation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121579324B_ABST
    Figure CN121579324B_ABST
Patent Text Reader

Abstract

The application discloses a software quality measurement method based on FERMATEAN fuzzy PROMETHEE and quantum particle swarm optimization, which comprises the following steps: obtaining original characteristic values of a software class diagram and constructing a complex fuzzy matter element; converting the complex fuzzy matter element into Fermatean fuzzy numbers satisfying cubic constraint to expand the uncertainty representation space; calculating a score function and a superior membership degree to form a normalized matrix; constructing an adaptive function combining discrimination and balance penalty, and adaptively learning optimal index weights by using a quantum particle swarm optimization algorithm; calculating net flow values of each object by using a PROMETHEE method based on the optimal weights and the superior membership degree; and calculating a comprehensive evaluation index according to the net flow values and dividing quality grades. The application overcomes the limitations of traditional methods in fuzzy information description, static weighting and linear compensation, and improves the accuracy, adaptability and decision rationality of software quality measurement.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of software engineering technology, and in particular relates to a software quality measurement method based on FERMATEAN fuzzy PROMETHEE and quantum particle swarm optimization. Background Technology

[0002] Software metrics is an important research area in software engineering, with the fundamental purpose of providing scientific guidance for developing high-quality software. Since Rubey and Hartwick proposed the concept of software metrics in 1968, this field has developed for over fifty years.

[0003] Early theoretical achievements in research based on software internal properties include code lines estimation, McCabe complexity, and function point analysis. For object-oriented software, the CK metric set proposed by Chidamber and Kemerer in 1994 laid the foundation for this field, including six metrics: weighted method count, number of subclasses, inheritance tree depth, class coupling, lack of class cohesion, and number of response sets. Subsequent researchers have continuously expanded and improved upon this foundation. Padhy et al. combined multiple metrics to propose new measurement methods, Misra and Adewumi proposed the cognitive complexity metric set, Gupta used logistic regression for software defect prediction, and Wang and Wang's research showed that software dependencies are an important predictor of software defects.

[0004] Class diagrams, as a core modeling element in UML, describe the classes and their relationships in a system, and their construction quality directly affects software complexity. Currently, there are relatively few methods for measuring class diagram complexity. Marchesi uses seven metrics to measure class diagram complexity but only considers inheritance and dependency relationships; Genero uses 14 metrics to further refine inter-class relationships; Zhou Yuming uses information entropy to measure class diagram complexity; Yi Tong proposes a UML class diagram complexity measurement method based on dependency analysis, comprehensively considering inter-class relationships, intra-class attributes, and methods.

[0005] However, existing research still has shortcomings. Traditional TOPSIS methods are based on simple Euclidean distance calculations, ranking the evaluated object by measuring its distance to the ideal and negative ideal solutions. However, this distance metric is linear and fully compensatory; a disadvantage in one indicator can be completely offset by an advantage in another, failing to accurately reflect the irreplaceable nature of certain key indicators in software quality evaluation. Regarding weight determination, traditional entropy weighting is a static method, objectively calculating weights based on the data's dispersion. However, it lacks adaptive learning capabilities; once determined, weights remain fixed and cannot be dynamically adjusted according to the characteristics of different software projects, failing to fully extract the quality discrimination information contained in the evaluation data. Furthermore, existing Pythagorean fuzzy sets require the sum of the squares of membership and non-membership degrees to not exceed 1. When the sum of their squares approaches or exceeds 1, it cannot accurately characterize more complex fuzzy situations, limiting its ability to model highly uncertain information in software quality evaluation. Summary of the Invention

[0006] To address the aforementioned technical problems, this invention proposes a software quality measurement method based on FERMATEAN fuzzy PROMETHEE and quantum particle swarm optimization, thereby resolving the issues present in the prior art.

[0007] To achieve the above objectives, this invention provides a software quality measurement method based on FERMATEAN fuzzy PROMETHEE and quantum particle swarm optimization, comprising:

[0008] Obtain the original feature values ​​of multiple software objects to be evaluated on multi-dimensional evaluation indicators; based on the original feature values, construct a composite fuzzy matter element that reflects the correspondence between the evaluation objects, evaluation indicators and indicator values;

[0009] The original feature values ​​in the composite fuzzy matter element are converted into Fermatean fuzzy numbers that satisfy Fermatean constraints to obtain Fermatean fuzzy matter elements.

[0010] Calculate the score function of each Fermatean fuzzy number of the Fermatean fuzzy matter element, and convert the score function into a preferred membership degree to obtain a preferred membership degree matrix;

[0011] Based on the preferred membership matrix, a total fitness function is constructed, and the quantum particle swarm optimization algorithm is used to iteratively optimize the total fitness function. The optimal weight vector of the evaluation index that maximizes the value of the total fitness function is searched and output.

[0012] Based on the preferred membership matrix and the optimal weight vector, the net current value of each software object to be evaluated is calculated using the PROMETHEE method; based on the net current values ​​of all software objects to be evaluated, the comprehensive software quality evaluation index is calculated, and the quality level is determined based on the comprehensive software quality evaluation index.

[0013] Optionally, the process of converting the original eigenvalues ​​in the composite fuzzy matter element into Fermatean fuzzy numbers that satisfy Fermatean constraints includes:

[0014] Calculate the maximum and minimum values ​​of all original feature values ​​under each evaluation index in the composite fuzzy matter element; for each original feature value under a single index, calculate the corresponding membership degree and non-membership degree according to the maximum and minimum values ​​and in combination with the index type, and convert the original feature value into a Fermatean fuzzy number composed of membership degree and non-membership degree.

[0015] Optionally, the process of calculating the score function of each Fermatean fuzzy number and converting it into preferred membership degrees to obtain the preferred membership degree matrix includes:

[0016] For each Fermatean fuzzy number in the Fermatean fuzzy matter element, a corresponding score function value is calculated based on its membership degree and non-membership degree; based on the score function value, the corresponding preferred membership degree is calculated through a preset linear mapping relationship.

[0017] The preferred membership matrix is ​​constructed based on all the preferred membership degrees obtained.

[0018] Optionally, for each Fermatean fuzzy number, the difference between the cube of the membership degree and the cube of the non-membership degree is used to obtain the score function value.

[0019] Optionally, the total fitness function consists of a basic fitness term and a diversity penalty term, expressed as follows:

[0020] ;

[0021] in, The total fitness value including the penalty term; Represents the weight vector The corresponding basic fitness value, where n is the number of evaluation indicators; This is the penalty coefficient; Uniform weighting represents the ideal distribution when all indicators have equal weights; The weight of the j-th indicator deviates from the uniform distribution by the square.

[0022] Optional, weight vector The corresponding basic fitness values ​​are calculated as follows:

[0023]

[0024] In the formula, m represents the number of software objects to be evaluated, and n represents the number of evaluation indicators. Let the degree of preferential membership of the i-th software object to be evaluated on the j-th indicator be denoted as . Let be the average superior membership degree of the j-th indicator among all software objects to be evaluated.

[0025] Optionally, the process of iteratively optimizing the total fitness function using the quantum particle swarm optimization algorithm, and searching for and outputting the optimal weight vector of the evaluation index that maximizes the total fitness function value, includes:

[0026] The parameters of the quantum particle swarm optimization algorithm are initialized and initial particle positions representing candidate weight vectors are randomly generated. In each iteration, the fitness value corresponding to the current position of each particle is calculated based on the total fitness function, and the individual historical best position of each particle and the global historical best position of the entire particle swarm are updated according to the fitness value. The position of each particle is updated based on the quantum update mechanism, and the updated position is normalized to ensure that it meets the constraints of the weight vector. The above iterative process is repeated until the preset termination condition is met, and finally the global historical best position is output as the optimal weight vector.

[0027] Optionally, the quantum update mechanism is as follows:

[0028] The particle position is updated based on its local attraction point, the population average optimal position, and the contraction-expansion coefficient. The local attraction point is obtained by randomly weighting the individual historical optimal position component of the corresponding particle and the global historical optimal position component of the entire particle swarm. The population average optimal position is determined by the average value of the individual historical optimal position components of all particles. The contraction-expansion coefficient decreases linearly with the number of iterations.

[0029] Optionally, the process of calculating the net flow value of each software object to be evaluated using the PROMETHEE method includes:

[0030] For any two software objects to be evaluated, calculate the difference in their preferred membership degrees on each evaluation indicator based on the preferred membership matrix; calculate the preference intensity on that evaluation indicator using a preset preference function based on the difference; use the optimal weight vector to perform a weighted summation of the preference intensity of each evaluation indicator to obtain the overall preference index of the former object relative to the latter object; for each software object to be evaluated, calculate the average of its overall preference index relative to all other objects to obtain the positive flow, and calculate the average of the overall preference index of all other objects relative to it to obtain the negative flow; subtract the positive flow from the negative flow to obtain the net flow value of the software object to be evaluated.

[0031] Optionally, the process of calculating the comprehensive software quality evaluation index based on the net flow value of all software objects to be evaluated includes:

[0032] Based on the net inflow values ​​of all software objects to be evaluated, the maximum and minimum net inflow values ​​are determined. For each software object to be evaluated, the net inflow value is normalized based on the maximum and minimum net inflow values ​​to obtain the comprehensive software quality evaluation index of that software object.

[0033] Compared with the prior art, the present invention has the following advantages and technical effects:

[0034] This invention proposes a novel software quality measurement method that integrates Fermatean fuzzy sets, the PROMETHEE preference ranking method, and quantum particle swarm optimization. First, Fermatean fuzzy set theory is introduced to replace Pythagorean fuzzy sets, and the cubic sum of membership and non-membership degrees is used instead of the square sum constraint. This significantly expands the uncertainty representation space, enabling the establishment of an effective fuzzy representation in software quality evaluation even when experts have high judgments on both membership and non-membership degrees for a particular indicator, thus more accurately characterizing complex fuzzy information. Second, the PROMETHEE preference ranking method replaces the TOPSIS distance metric. Instead of relying on simple Euclidean distance, it defines a preference function to characterize the evaluator's preference features and ranks based on pairwise comparisons to calculate positive, negative, and net flows. The preference function can set indifference and strict preference thresholds, treating small differences as indifference and significant differences as strict preferences, which better aligns with the psychological characteristics of human decision-making. Furthermore, PROMETHEE's net flow ranking can handle non-compensatory relationships between indicators, avoiding the problem of complete compensation for disadvantages in TOPSIS. Third, the quantum particle swarm optimization algorithm (QPSO) is used to replace the entropy weight method to achieve adaptive weight learning. Traditional entropy weight methods and deviation maximization methods are essentially static calculations based on mathematical formulas. The QPSO algorithm, however, combines quantum mechanics principles and swarm intelligence, achieving global optimization search through quantum state superposition, quantum potential wells, and tunneling effects. It can adaptively learn the weight configuration that maximizes software quality discrimination based on the inherent characteristics of the evaluation data, possessing intelligent learning and dynamic adaptability, thus overcoming the fundamental limitations of static weight methods. This invention constructs a complete technical framework encompassing fuzzy matter-element construction, Fermatean fuzzy transformation, quantum optimization weights, and Promethee ranking, comprehensively improving the scientific rigor and accuracy of software quality measurement from three levels: uncertainty modeling, weight learning, and ranking decision. Attached Figure Description

[0035] The accompanying drawings, which form part of this application, are used to provide a further understanding of this application. The illustrative embodiments and descriptions of this application are used to explain this application and do not constitute an undue limitation of this application. In the drawings:

[0036] Figure 1 This is a flowchart of a method according to an embodiment of the present invention. Detailed Implementation

[0037] It should be noted that, unless otherwise specified, the embodiments and features described in this application can be combined with each other. This application will now be described in detail with reference to the accompanying drawings and embodiments.

[0038] It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions, and although a logical order is shown in the flowchart, in some cases the steps shown or described may be executed in a different order than that shown here.

[0039] Example 1

[0040] like Figure 1 As shown, this embodiment provides a software quality measurement method based on FERMATEAN fuzzy PROMETHEE and quantum particle swarm optimization, including:

[0041] (I) The fundamental theory of fuzzy matter-element and Fermatean fuzzy set;

[0042] (1) The basic concept and construction of fuzzy matter-element;

[0043] Matter-element analysis is an emerging discipline that studies the laws and methods for solving incompatible problems. In matter-element analysis, the evaluation object, evaluation index, and index value are combined to form basic elements, which are used to describe the characteristics of things.

[0044] For the software quality measurement problem, there are m class diagrams to be evaluated, and each class diagram has n evaluation metrics. Let the i-th class diagram be defined as... ( The j-th evaluation index is ( The eigenvalue of the i-th class graph on the j-th index is Then the n-dimensional composite fuzzy matter-element representation of m software class diagrams is:

[0045]

[0046] In the formula, This represents a composite fuzzy matter element with m rows and n columns, where the first row contains n evaluation indices. The first column contains m evaluation objects. ,element This represents the original feature value of the i-th class graph on the j-th indicator, which may be a precise numerical value, a fuzzy numerical value, or an expert score. This matter-element representation clearly shows the correspondence between the evaluation object, the evaluation indicator, and the indicator value.

[0047] (2) Definition and properties of Fermatean fuzzy sets;

[0048] Fermatean fuzzy sets are an extension of Pythagorean fuzzy sets, proposed by Senapati and Yager in 2019. For the universe of discourse U, a Fermatean fuzzy set A is defined as:

[0049]

[0050] In the formula, x represents an element in the universe of discourse U; The function representing the membership of element x to set A has a range of values. A larger value indicates that the element belongs more closely to the set. The function representing the non-membership degree of element x with respect to set A, with values ​​ranging from 1 to 2. A larger value indicates that the element is less likely to belong to the set. Both satisfy the Fermatean constraint:

[0051]

[0052] In the formula, the superscript 3 indicates a cubic operation. This constraint ensures the consistency between membership and non-membership degrees. Compared to the constraints of traditional Pythagorean fuzzy sets... The cubic constraint of Fermatean fuzzy sets provides a larger feasible region.

[0053] Hesitation degree of Fermatean fuzzy sets Defined as:

[0054]

[0055] In the formula, This represents the degree of hesitation of element x with respect to set A, and its value ranges from 1 to 2. This indicates the degree of uncertainty among decision-makers regarding the allocation of elements. When The smaller the time, the less hesitant. The larger the value, the higher the uncertainty.

[0056] The advantage of Fermatean fuzzy sets lies in their expansion of the uncertainty representation space. For example, when and At that time, Pythagorean constraints If not satisfied, it cannot be represented; however, for Fermatean constraints, it can be adjusted to... and ,at this time Meeting constraints provides greater room for adjustment and modeling flexibility.

[0057] (3) Fermatean fuzzy number transformation of evaluation data;

[0058] For the original evaluation data It needs to be converted to Fermatean fuzzy number form. The conversion method falls into two categories:

[0059] When the evaluation data consists of fuzzy evaluations given by experts, the experts directly provide the degree of membership. Non-membership degree Requirements .

[0060] When the evaluation data are precise numerical values, the following conversion formula is used. First, calculate the maximum value of the j-th indicator. and minimum value :

[0061]

[0062]

[0063] In the formula, This represents the maximum eigenvalue of m class graphs on the j-th index. This represents the smallest eigenvalue.

[0064] Then, the conversion is performed based on the indicator type. For positive indicators (the larger the better), the membership degree is calculated. Non-membership degree :

[0065]

[0066]

[0067] In the formula, This represents the membership degree of the i-th class graph on the j-th index, and its value is normalized using the cubic square root method. interval; Represents the corresponding non-membership degree; fraction Normalize the original data to The interval is then squared three times to obtain the Fermatean fuzzy number. The above transformation automatically satisfies the Fermatean constraints:

[0068]

[0069] For the inverse index (the smaller the better), the formulas for calculating membership degree and non-membership degree are as follows:

[0070]

[0071]

[0072] In the formula, the conversion of the inverse index makes the membership degree greater the smaller the value, which conforms to the semantics of "the smaller the better".

[0073] After conversion, the Fermatean fuzzy matter-element representation is obtained. :

[0074]

[0075] In the formula, For Fermatean fuzzy matter-element representation, each element It is a Fermatean fuzzy number that preserves the relative relationships of the original data while expressing the fuzziness and uncertainty in the evaluation process.

[0076] (ii) Dimensionless processing of evaluation indicators;

[0077] Since the indicators involved in software quality evaluation have different dimensions and orders of magnitude, they need to be dimensionless to make them comparable.

[0078] (1) The scoring function of Fermatean fuzzy numbers;

[0079] Define Fermatean fuzzy number Scoring function for:

[0080]

[0081] In the formula, This represents the score of the i-th class graph on the j-th indicator, obtained by subtracting the cube of the non-membership degree from the cube of the membership degree, with a value range of... .when Very large and When I was very young, A value close to 1 indicates that the indicator is performing well; when... very small and When it is very large, A value close to -1 indicates that the indicator is performing poorly; when and When they are close, A value close to 0 indicates that the indicator is performing poorly.

[0082] (2) Calculation of the degree of membership of the preferred member;

[0083] To convert the scoring function to Preferred membership degree of an interval A linear transformation is used:

[0084]

[0085] In the formula, The degree of preferential membership of the i-th class graph on the j-th metric is represented by... from Interval linear mapping to The interval is obtained. When The closer the value is to 1, the better the performance of the indicator; when... The closer the indicator is to 0, the worse its performance; when... When the value is 0, it indicates that the indicator is performing at a moderate level.

[0086] After dimensionless processing, the preferred membership representation U is obtained:

[0087]

[0088] In the formula, U represents the preferred membership level of the object element, and all elements... It has a unified dimension and comparability, providing standardized input for subsequent weight learning and preference ranking.

[0089] (iii) Adaptive weight learning based on quantum particle swarm optimization;

[0090] Traditional entropy weighting methods determine weights by calculating the information entropy of indicators, which is a static calculation method and lacks adaptive learning capabilities. This invention employs a quantum particle swarm optimization algorithm, which intelligently searches and adaptively learns the optimal weight configuration.

[0091] (1) The basic principle of quantum particle swarm optimization algorithm;

[0092] Quantum particle swarm optimization (PSO) combines the principles of quantum mechanics with the concept of particle swarm optimization. In the quantum world, particles no longer have definite positions and velocities, but rather exist in a quantum superposition state, where their positions are determined by the probability distribution of the wave function.

[0093] Let the particle swarm size be N, indicating that there are N candidate weighting schemes. The position vector of each particle k in the n-dimensional weight space is: :

[0094]

[0095] In the formula, This represents the position vector of the k-th particle, corresponding to a set of weighting schemes; The position component of the k-th particle in the j-th dimension, i.e., the weight value of the j-th index, satisfies... and Ensure that the weights are non-negative and uniform.

[0096] Each particle maintains its individual optimal position. :

[0097]

[0098] In the formula, This represents the optimal weight configuration of the k-th particle found so far, which is the position with the highest fitness in the particle's history.

[0099] Global optimal position The position with the highest fitness among all particles:

[0100]

[0101] In the formula, This represents the globally optimal weight configuration found so far in the entire particle swarm. This represents the component of the globally optimal position in the j-th dimension.

[0102] (2) The quantum update mechanism of particle position;

[0103] In the QPSO algorithm, particle positions are updated according to the laws of quantum mechanics. First, the local attraction point is calculated. :

[0104]

[0105] In the formula, This represents the local attraction point of the k-th particle in the j-th dimension, which is the individual optimal point. and global optimal The random weighted average; for Uniformly distributed random numbers within an interval, generated independently for each dimension of each particle in each iteration, denoted as . The local attraction point is randomly selected between the individual optimum and the global optimum, which reflects the superposition property of quantum states.

[0106] Then calculate the j-th dimension component of the population average optimal position. :

[0107]

[0108] In the formula, The value represents the average of the optimal positions of all individual particles in the j-th dimension, reflecting the overall search direction of the group, and serving as the center of the quantum potential well.

[0109] Next, we calculate the shrinkage and expansion coefficients. :

[0110]

[0111] In the formula, The contraction / expansion coefficient for the current iteration; The coefficient of maximum contraction and expansion is usually taken as... ; The minimum contraction-expansion coefficient is usually taken as... ; t represents the maximum number of iterations; t represents the current iteration number. The contraction and expansion coefficients decrease linearly with the number of iterations, especially in the early stages. It is more beneficial for global search, and in the later stages Smaller size is advantageous for fine-grained local searches.

[0112] Finally, update the particle position based on the quantum state:

[0113]

[0114] In the formula, This represents the updated position of the k-th particle in the j-th dimension; This is the position before the update; for Uniformly distributed random numbers in an interval, denoted as ; Negative exponential distribution random numbers are generated to simulate the position distribution of particles in a quantum potential well; the positive and negative signs are randomly selected with equal probability (i.e., the plus sign is selected with a probability of 0.5 and the minus sign with a probability of 0.5), so that the particles can jump to both sides of the attraction point, which reflects the quantum tunneling effect. The distance between the particle's current position and the group's average position serves as the basis for the search step size.

[0115] After the update, the weight vector needs to be normalized to ensure that the weights are non-negative and sum to 1.

[0116]

[0117] In the formula, These are the normalized weight values; Ensure the weights are non-negative; if the updated position is negative, truncate it to 0; denominator The sum of the non-negative weights of all dimensions is used to normalize the result by dividing by this sum, ensuring... .

[0118] (3) Design of the fitness function;

[0119] The fitness function is used to evaluate the quality of each particle (weighting scheme). The design goal is to maximize the distinguishability between software class diagrams of different quality levels.

[0120] For the weight vector ,in Represents the weight of the j-th indicator and satisfies and ( Define the basic fitness function. for:

[0121]

[0122] In the formula, Represents the weight vector The corresponding basic fitness value; The preferred membership degree of the i-th class graph on the j-th index is obtained by equation (14); Let j be the average preferred membership degree of the j-th index across all class graphs:

[0123]

[0124] In the formula, This represents the mean of the j-th indicator, reflecting its average performance level. This represents the squared deviation of the i-th class graph from the mean on the j-th indicator. The larger the deviation, the more significant the difference between the class graph's performance on that indicator and the average level. Let be the overall discriminative power of the j-th metric across all class graphs. A larger value indicates that the metric can better distinguish the quality differences between different class graphs. The fitness function uses weights... The discrimination of each indicator is weighted and summed, and the indicator with the larger weight contributes more to the overall discrimination.

[0125] To prevent excessive weight concentration on a few indicators while neglecting others, a diversity penalty term is introduced, resulting in the overall fitness function. :

[0126]

[0127] In the formula, The total fitness value including the penalty term; The penalty coefficient controls the strength of the penalty term, and is usually taken as... ; Uniform weighting represents the ideal distribution when all indicators have equal weights; The penalty measures the squared deviation of the weight of the j-th indicator from the uniform distribution. The larger the sum of squared deviations of all indicators, the heavier the penalty. The penalty term encourages a relatively balanced weight distribution, avoiding extreme cases where some indicators have excessively large weights (e.g., close to 1) while other indicators have excessively small weights (e.g., close to 0), thus ensuring the comprehensiveness of the evaluation.

[0128] (4) The complete process of the weight optimization algorithm;

[0129] The weight adaptive learning algorithm based on QPSO is as follows:

[0130] Step 1: Parameter initialization. Set the particle swarm size N, typically set to... Maximum number of iterations , usually take Weighting Dimensions Maximum contraction and expansion coefficient Minimum coefficient of contraction and expansion Penalty coefficient .

[0131] Step 2: Particle Initialization. Randomly generate the initial positions of N particles. For the k-th particle, generate n random numbers. ( , Then normalize to obtain the initial weights:

[0132]

[0133] In the formula, This indicates the initial position of the k-th particle in the j-th dimension, and the superscript (0) indicates the 0th iteration, i.e., the initial state; for Random numbers in the interval; denominator The sum of random numbers across all dimensions of the particle, ensured by normalization. Set the initial value of the individual optimal position for each particle. .

[0134] Step 3: Fitness Evaluation. For each particle k, determine its position. As a weight vector Substitute into the fitness function. First, calculate the average preferred membership degree of each index according to equation (25). Then calculate the basic fitness according to formula (24). Finally, the total fitness is calculated according to formula (26). .

[0135] Step 4: Update individual and global optima. For each particle k, compare the fitness at its current position. Fitness of its individual optimal position ,like Then update the individual optimal Among all particles, the position of the particle with the highest fitness value is selected as the global optimum.

[0136]

[0137] In the formula, The optimal position globally. This represents the particle position that maximizes the fitness function.

[0138] Step 5: Calculate the population average optimal position. Calculate the population average for each dimension according to equation (20). ( ).

[0139] Step 6: Update the contraction and expansion coefficients. Calculate the contraction and expansion coefficients for the current iteration t according to equation (21). .

[0140] Step 7: Update particle positions. For each dimension j of each particle k:

[0141] Generate random numbers and ;

[0142] Calculate the local attraction point according to formula (19) ;

[0143] Update the position according to formula (22) The sign is randomly selected;

[0144] Normalizing all dimensions of particle k according to equation (23), we get ;

[0145] Update particle position .

[0146] Step 8: Determine the termination condition. The algorithm terminates if any of the following conditions are met:

[0147] The current iteration count has reached its maximum value. ;

[0148] The fitness function shows no significant improvement over K consecutive generations, i.e. Where K is usually taken as 10, Usually taken ;

[0149] If the termination condition is met, output the globally optimal weight vector. Otherwise, Return to step 3 and continue iterating.

[0150] The final adaptive weight vector This weight configuration will be used for subsequent PROMETHEE ranking calculations, maximizing the discriminative power of software quality.

[0151] (iv) Comprehensive evaluation of software quality based on Fermatean fuzzy PROMETHEE;

[0152] (1) The basic principle of the PROMETHEE method;

[0153] PROMETHEE is a pairwise comparison-based preference ranking method, short for Preference Ranking Organization Method for Enrichment Evaluation. Unlike TOPSIS, which calculates the distance to the ideal solution, PROMETHEE quantifies the relative merits of evaluation objects by defining a preference function, which is more in line with the psychological characteristics of human decision-making.

[0154] For two software class diagrams and ( and The comparison of merits and demerits on the j-th indicator is achieved through the preference function. This indicates that the function measures Compared to The degree of preference for this indicator.

[0155] (2) Definition and selection of preference functions;

[0156] The PROMETHEE method offers six preference function types: conventional, quasi-conventional, linear, level, linear with an insensitive region, and Gaussian. For software quality metrics, the Gaussian preference function is most suitable because it smoothly handles differences and aligns with human perception of quality variations.

[0157] The Gaussian preference function is defined as:

[0158]

[0159] In the formula, Class diagram representation Relative to the class diagram on the j-th metric The preference level, with a value range of ; The difference in preferred membership degree between two class graphs on the j-th index:

[0160]

[0161] In the formula, Class diagram representation The degree of preferential membership on the j-th index is obtained by equation (14); Class diagram representation The degree of preferential membership on this indicator. When When, it means It is better than in this indicator The larger the difference, the higher the preference; when When, it means Not better than The preference level is 0.

[0162] The standard deviation parameter of the Gaussian function controls the shape of the preference function and is usually set as follows:

[0163]

[0164] In the formula, Indicates when the difference Smaller (e.g.) When the difference is large (e.g.), the preference increases slowly. When the preference degree rapidly approaches 1, it conforms to the fuzzy threshold characteristic of human decision-making: insensitivity to small differences and high sensitivity to significant differences.

[0165] The advantage of Gaussian preference functions is that the difference is very small. (Considered as indifferent), when the difference is large (Considered as strict preference), the intermediate region transitions smoothly, avoiding the problem of treating minor and significant differences equally in TOPSIS. For example, when hour, The preference is relatively small; when hour, The preference level is close to 1.

[0166] (3) Calculation of the weighted preference index;

[0167] For class diagrams Compared to class diagrams To determine the overall preference, it is necessary to weight and aggregate the preferences of each indicator. Weighted Preference Index Defined as:

[0168]

[0169] In the formula, Class diagram representation Compared to class diagrams The overall preference index, with a value range of ; The weight of the j-th index is the adaptive weight obtained by the QPSO algorithm in Section 2.3; The preference degree on the j-th indicator is calculated by equation (29). The weighted preference index aggregates the preferences of each indicator according to their importance, and the indicators with higher importance have a greater impact on the overall preference.

[0170] The larger the value, the better. Compared to The more obvious the overall advantage; express Not better than in any metric ; express Strictly superior in all metrics Furthermore, the weight allocation is reasonable.

[0171] (4) Definition and calculation of positive flow, negative flow and net flow;

[0172] For m software class diagrams, it is necessary to calculate the pairwise comparison results of each class diagram with all other class diagrams and aggregate them into positive flow, negative flow, and net flow.

[0173] Class diagram The mainstream This indicates the degree to which this class diagram surpasses the average of all other class diagrams:

[0174]

[0175] In the formula, Class diagram The positive current, with a value range of ; To remove Number of other class diagrams besides; summation symbol Indicates all Summation of class diagrams, calculation Exceeding their average preference. The larger the value, the more obvious the overall advantage of this type of diagram compared to other types of diagrams, and the better the quality.

[0176] Class diagram negative current This indicates the average degree to which this class diagram is surpassed by all other class diagrams:

[0177]

[0178] In the formula, Class diagram The negative current, with a value range of ; Class diagram representation Beyond The preference degree; summation to calculate all other class graphs beyond The average degree. The larger the value, the more obvious the overall disadvantage of this type of diagram compared to other types of diagrams, and the worse its quality.

[0179] Class diagram Net flow The difference between positive and negative flow:

[0180]

[0181] In the formula, Class diagram The net flow, with a value range of . This indicates that the graph of this type surpasses other graphs to a greater extent than it is surpassed, and its overall quality is superior. This indicates that the graph of this type is surpassed to a greater extent than it surpasses other graphs of this type, and its overall quality is relatively poor. This indicates that the degree of surpassing and being surpassed is roughly equal, and the quality is at a moderate level. Net flow The larger the absolute value, the more significant the difference in quality level between this type of graph and other types of graphs.

[0182] All class diagrams can be sorted based on net flow value: the higher the net flow value, the better the quality of the class diagram, and the lower the net flow value, the worse the quality of the class diagram.

[0183] (5) Software quality comprehensive evaluation index;

[0184] For ease of understanding and application, the net flow value is normalized to The interval defines the comprehensive evaluation index of software quality. :

[0185]

[0186] In the formula, Let be the comprehensive quality evaluation index of the i-th class graph, with a value range of . ; The net flow value of the i-th class diagram is calculated by equation (35); The minimum net flow value across all class diagrams:

[0187]

[0188] The maximum net flow value across all class diagrams:

[0189]

[0190] In the formula, and The range of net flow values ​​was determined. Through linear normalization transformation of equation (36), the class diagram corresponding to the minimum net flow was obtained. The class diagram corresponding to the largest net flow Other class diagrams The values ​​are linearly distributed between 0 and 1. The closer the value is to 1, the better the software quality; the closer it is to 0, the worse the software quality.

[0191] according to Values ​​can be used to classify the quality level of software class diagrams:

[0192] Excellent level: This indicates that the quality of this type of chart is very high, significantly better than other types of charts in most metrics;

[0193] Good level: This indicates that the image of this type is of good quality and its overall performance is better than average;

[0194] Intermediate level: This indicates that the quality of this type of image is moderate, and its overall performance is close to the average level.

[0195] Poor grade: This indicates that the quality of this type of graph is poor and its overall performance is below average.

[0196] Difference: This indicates that the quality of this type of chart is very poor, and it is significantly inferior to other types of charts in most metrics.

[0197] (v) Complete algorithm flow and implementation steps;

[0198] In summary, the complete workflow of the software quality metric algorithm based on Fermatean fuzzy PROMETHEE and quantum particle swarm optimization is as follows:

[0199] Input: Raw data of n evaluation metrics from m software class diagrams, represented as object elements. ,in This represents the original feature value of the i-th class graph on the j-th index.

[0200] Output: Software quality comprehensive evaluation index vector and the corresponding quality level vector .

[0201] Phase 1: Fuzzy matter-element construction and Fermatean fuzzy transformation;

[0202] Step 1: Construct composite fuzzy matter-element. According to equation (1), organize the n indices of m class diagrams into composite fuzzy matter-element. .

[0203] Step 2: Fermatean fuzzy number transformation. Perform Fermatean fuzzy number transformation on the original data:

[0204] For each index j, calculate the maximum value of the index according to equations (5) and (6). and minimum value ;

[0205] For each element Based on the indicator type (positive or negative), the membership degree is calculated according to formulas (7)-(8) or (10)-(11). Non-membership degree ;

[0206] Composition of Fermatean fuzzy matter elements As shown in equation (12).

[0207] Step 3: Dimensionless Processing. Dimensionless processing is performed on the Fermatean fuzzy matter element:

[0208] For each Fermatean fuzzy number Calculate the score function according to formula (13) ;

[0209] Calculate the degree of membership according to formula (14). ;

[0210] The constituent elements U are composed of the superior membership degree, as shown in equation (15).

[0211] Phase 2: Weight adaptive learning based on QPSO;

[0212] Step 4: Initialize QPSO parameters. Set the particle swarm size. Maximum number of iterations Weight dimension , , Penalty coefficient .

[0213] Step 5: Initialize the particle swarm. Randomly generate the initial weight positions of N particles according to equation (27). And set the individual optimal .

[0214] Step 6: Iterative optimization. Set the iteration counter. Repeat the following sub-steps until the termination condition is met:

[0215] Step 6.1: For each particle k, its position As a weight vector, the mean of each indicator is calculated according to equation (25). ;

[0216] Step 6.2: Calculate the basic fitness according to equation (24). ;

[0217] Step 6.3: Calculate the total fitness according to equation (26). ;

[0218] Step 6.4: Update the individual optimality and global optimal (According to formula (28));

[0219] Step 6.5: Calculate the population average optimal position according to formula (20). ;

[0220] Step 6.6: Calculate the contraction and expansion coefficients for the current iteration according to equation (21). ;

[0221] Step 6.7: For each dimension j of each particle k, calculate the local attraction point according to equation (19). Update the position according to formula (22) ;

[0222] Step 6.8: Normalize the weights of each particle according to equation (23);

[0223] Step 6.9: Determine if the termination condition is met ( Or the fitness improvement over K consecutive generations is less than If the condition is met, the loop will exit; otherwise... Continue iterating.

[0224] Step 7: Output the optimal weights. After the iteration is complete, output the globally optimal weight vector. .

[0225] Phase 3: PROMETHEE-based preference ranking;

[0226] Step 8: Calculate the preference function. For any two class diagrams... and ( and ):

[0227] For each index j, calculate the difference according to equation (30). ;

[0228] Calculate the preference degree using equations (29) and (31). .

[0229] Step 9: Calculate the weighted preference index. For any class graph pair Calculate the overall preference index according to formula (32) Use the weights obtained in step 7 .

[0230] Step 10: Calculate positive flow, negative flow, and net flow. For each class diagram... ( ):

[0231] Calculate the forward current according to formula (33) ;

[0232] Calculate the negative current according to formula (34) ;

[0233] Calculate the net flow using formula (35) ;

[0234] Phase Four: Calculation and Grading of Quality Evaluation Index;

[0235] Step 11: Calculate the net flow extremes. Calculate the minimum net flow for all class diagrams according to equations (37) and (38). and maximum value .

[0236] Step 12: Normalization. For each class diagram... Calculate the software quality comprehensive evaluation index according to formula (36). .

[0237] Step 13: Quality Grade Classification. Based on... The value is used to classify each class diagram into one of five levels: excellent, good, average, poor, or very poor, according to the grading criteria defined in Section 2.4.5.

[0238] Step 14: Output Results. Returns a vector of quality evaluation indices. and the corresponding quality level vector ,in Excellent, Good, Average, Poor, Poor .

[0239] This concludes the complete software quality measurement algorithm process. The algorithm expands the uncertainty representation space using Fermatean fuzzy sets, achieves adaptive weight learning through QPSO, and implements preference ranking through PROMETHEE; these three elements are organically integrated to form a complete technical solution.

[0240] (vi) Algorithm convergence and complexity analysis;

[0241] (1) Convergence guarantee of the QPSO algorithm;

[0242] The convergence of the quantum particle swarm optimization algorithm has been theoretically proven. The QPSO algorithm has the following convergence properties:

[0243] First, quantum states guarantee global search capability. Since the particle is in a quantum superposition state, its position is updated according to equation (22) and includes... Item (of which) This term generates negative exponentially distributed random numbers, enabling particles to jump widely in the search space and avoid getting trapped in local optima.

[0244] Second, the contraction and expansion coefficients ensure the convergence speed. From equation (21), it can be seen that the contraction and expansion coefficients... from linearly decreasing to In the early stages of iteration Larger particle size and wider particle search range are beneficial for global exploration; in the later stages of iteration The smaller particle size reduces the search range, which is beneficial for fine-grained local searches and ensures algorithm convergence.

[0245] Third, the population average position guides the convergence direction. The population average optimal position is defined by equation (20). It integrates the optimal individual information of all particles and serves as the center of the quantum potential well, guiding the entire particle swarm to gather towards the high-quality region.

[0246] In fitness function Under the conditions of continuous differentiability and boundedness, the QPSO algorithm converges to the global optimum or its derivative with probability 1. Within the neighborhood, among which From the minimum contraction and expansion coefficient and number of iterations A joint decision.

[0247] (2) Algorithm time complexity analysis;

[0248] Let the number of software class graphs be m, the number of evaluation metrics be n, the size of the QPSO particle swarm optimization be N, and the maximum number of QPSO iterations be n. The time complexity analysis of each stage of the algorithm is as follows:

[0249] The first stage involves fuzzy matter-element construction and Fermatean fuzzy transformation: Step 1, constructing the matter-element, requires reading all the original data, with a complexity of O(n log n). Step 2, the Fermatean fuzzy transformation, requires calculating equations (5)-(11) for each element, with a complexity of O(n). Step 3, dimensionless processing, requires calculating equations (13)-(14) for each element, with a complexity of O(n). The total complexity of this stage is .

[0250] The second stage is weight adaptive learning based on QPSO: Steps 4-5 initialization requires initializing the n-dimensional positions of N particles, with a complexity of O(n). Step 6 is iterative optimization. Each iteration includes steps 6.1 to 6.3 to calculate the fitness. For each particle, equations (24)-(26) need to be calculated, involving m class graphs and n indices, with a complexity of O(n). The complexity of updating the optimal position and parameters in steps 6.4 to 6.6 is... The complexity of updating particle positions in steps 6.7 to 6.8 is... The total complexity of a single iteration is Iteration The total complexity of this stage is... .

[0251] The third stage is preference ranking based on PROMETHEE: Step 8, calculating the preference function, requires processing all class graph pairs. Calculate, total Yes, each pair requires calculating the preference degree of n indicators, with a complexity of O(n). Step 9, calculating the weighted preference index, has already been completed in step 8 and does not add additional complexity; Step 10, calculating the positive flow, negative flow, and net flow, requires aggregation for each class graph. Each preference value has a complexity of O(n log n). The total complexity of this stage is .

[0252] The fourth stage of quality evaluation index calculation: Steps 11 to 14 only involve linear scanning and simple calculations, with a complexity of O(n log n). .

[0253] The overall time complexity of the algorithm is:

[0254]

[0255] In the formula, This represents the overall time complexity of the algorithm. In practical applications, it is usually set to... , Therefore, when the number of class diagrams m is large (e.g. The dominant complexity is This is determined by pairwise comparisons of PROMETHEE; when the number of class diagrams m is small and the number of indicators n is large (e.g. and The dominant complexity is The weight is determined by QPSO weight optimization.

[0256] This complexity is acceptable in practical applications. For example, for Class diagram, The typical size of each indicator, the computational complexity is approximately The basic operations take between seconds and minutes to complete on modern computers.

[0257] (3) Algorithm space complexity analysis;

[0258] The main data structures that the algorithm needs to store include: raw data objects. need Space; Fermatean fuzzy matter element need The space stores two values ​​for each element: membership degree and non-membership degree; the optimal membership degree object element U needs... Space; QPSO particle position matrix requires Space, storing the n-dimensional positions of N particles; QPSO requires individual optimality and global optimality. Space; the preference index matrix requires Space is needed to store the preference values ​​of all class graph pairs; positive flow, negative flow, and net flow vectors require... space.

[0259] The overall space complexity of the algorithm is:

[0260]

[0261] In the formula, This represents the overall space complexity of the algorithm. Under typical parameter settings ( , , The required storage space is approximately Each floating-point number, calculated at 8 bytes per number, would require approximately 7.2KB of memory, which is easily accommodated in a typical computer's memory.

[0262] This invention forms a theoretically complete and logically rigorous technical framework. At the theoretical level, Fermatean fuzzy set theory, based on extended fuzzy mathematics and proposed by Senapati and Yager in 2019, has been widely validated in decision theory; quantum particle swarm optimization, based on the wave-particle duality and superposition principle of quantum mechanics and proposed by Sun et al. in 2004, has a solid theoretical foundation in the field of optimization; and the PROMETHEE method, based on extrapolation ordering theory and proposed by Brans and Vincke in 1985, is a classic method in the field of multi-criteria decision making. These three methods originate from the fields of mathematics, physics, and decision science, respectively, and possess a solid disciplinary foundation.

[0263] At the logical level, the algorithm follows a clear logical chain of data fuzzification, weight learning, and preference ranking. The first stage, Fermatean fuzzy transformation, converts the original data into a standardized fuzzy representation, providing a unified input for subsequent calculations. The second stage, QPSO weight optimization, adaptively learns the optimal weight configuration based on the preferred membership matrix U obtained in the first stage. The third stage, PROMETHEE ranking, uses the weights obtained in the second stage. The membership matrix U obtained in the first stage is used to calculate the preference index and net inflow; the fourth stage performs normalization and rank classification based on the net inflow from the third stage. The four stages are interconnected and progressive, with clear input-output relationships.

[0264] At the implementation level, all formulas are clearly defined and parameter values ​​are based on established principles. For example, the Fermatean constraint equation (3) ensures the coordination between membership and non-membership; the QPSO contraction and expansion coefficient equation (21) guarantees a smooth transition from global search to local refinement; and the standard deviation in the Gaussian preference function equation (29) ensures a smooth transition from global search to local refinement. It is a reasonable value determined based on software quality evaluation experience; the penalty coefficient in the fitness function (26) Experiments have verified that the algorithm effectively prevents excessive weight concentration. The algorithm flow is complete and detailed, and it is feasible and reproducible.

[0265] The method of this invention has good applicability and scalability. In terms of applicability, the method is suitable for software projects of different sizes, from small applications (5 to 10 class diagrams) to large systems (50 to 100 class diagrams), with the algorithm's time and space complexity remaining within acceptable limits. It is applicable to different types of evaluation metrics, handling both objective metrics such as lines of code, cyclomatic complexity, and coupling, as well as subjective evaluation metrics such as maintainability scores and readability scores, all uniformly processed through Fermatean fuzzy transformation. It is also suitable for different levels of data uncertainty, from precise numerical values ​​to highly fuzzy expert judgments, all effectively represented by Fermatean fuzzy sets.

[0266] In terms of scalability, the evaluation indicators can be flexibly expanded. Only the value of the number of indicators n needs to be adjusted, and the algorithm will automatically adapt to the new indicator dimensions without modifying the core algorithm logic. The preference function can be replaced. The Gaussian preference function in equation (29) can be replaced with the other five preference function types provided by PROMETHEE, such as conventional, linear, and level, depending on actual needs. Only the function form of equation (29) needs to be modified. The fitness function can be customized. Equations (24) and (26) can be adjusted according to specific application requirements, such as adding prior constraints on the importance of indicators and introducing penalties for similarity between class graphs. The algorithm can be combined with other technologies. For example, a data preprocessing module (outlier detection and missing value imputation) can be added before the first stage, and a result visualization module (radar chart, scatter plot, heat map) can be added after the fourth stage. It can be combined with machine learning methods to achieve software defect prediction.

[0267] The method of this invention is compared in detail with the original TOPSIS method based on fuzzy matter elements and entropy weights.

[0268] In terms of uncertainty handling techniques, existing technologies employ traditional fuzzy sets or Pythagorean fuzzy sets, with constraints as follows: When both membership degree and non-membership degree are high (e.g.) , The inability to satisfy constraints limits modeling capabilities; this invention employs Fermatean fuzzy sets, with constraints as follows: By replacing the square constraint with the cubic constraint, the uncertainty representation space is expanded by about 32%, enabling the representation of more complex fuzzy situations.

[0269] Regarding the method for determining weights, the original technique used the entropy weight method, which statically calculates weights based on information entropy. The weights are fixed after a single calculation and do not have adaptive capabilities; this invention uses the QPSO algorithm, which iteratively updates the fitness functions in equations (24) to (26) and the quantum update mechanism in equations (16) to (23). The sub-adaptive learning of optimal weights allows for dynamic optimization of weight configuration based on data features, maximizing quality discrimination. Compared to the static calculation of the entropy weight method, QPSO adds an intelligent optimization process, although this increases computational complexity. However, it significantly improved the rationality of the weighting.

[0270] Regarding ranking decision-making methods, the existing technology uses the TOPSIS method, which utilizes Euclidean distance. and and proximity The ranking method is based on distance metric and assumes that the indicators are fully compensable. The present invention adopts the PROMETHEE method, which calculates the ranking through the preference function of Equation (29), the weighted preference index of Equation (32), and the net flow of Equations (33) to (35). Based on preference comparison rather than distance metric, it can handle the non-compensatory nature between indicators and is more in line with the characteristics of human decision-making.

[0271] In terms of computational complexity, the main complexity of the existing technology is... ,in For entropy weight calculation, For TOPSIS distance calculation; the main complexity of this invention is QPSO optimization has been added. Item and PROMETHEE Although the complexity has increased, the introduction of intelligent optimization and preference ranking significantly improves the rationality of weight allocation and the accuracy of evaluation results. The additional computational cost is worthwhile and acceptable in practical applications.

[0272] In terms of theoretical foundation, the original technology was based on classical fuzzy mathematics and distance geometry, and the theory was relatively simple. This invention integrates extended fuzzy mathematics, quantum mechanics principles and extrapolation ordering theory, forming a multidisciplinary theoretical system, which significantly improves the depth and breadth of the technology.

[0273] As can be seen from the above comparison, this invention achieves technological innovation in the three core aspects of uncertainty modeling, weight learning, and ranking decision-making, representing a fundamental improvement and enhancement compared to existing technologies. This invention is not a simple patching of existing technologies, but a systematic innovation from theoretical framework to algorithm implementation, providing a more scientific, reasonable, and accurate solution for software quality measurement.

[0274] The above are merely preferred embodiments of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A software quality measurement method based on FERMATEAN fuzzy PROMETHEE and quantum particle swarm optimization, characterized in that, Includes the following steps: Obtain the original feature values ​​of multiple software objects to be evaluated on multi-dimensional evaluation indicators; Based on the original feature values, a composite fuzzy matter element reflecting the correspondence between the evaluation object, evaluation index and index value is constructed. The original feature values ​​in the composite fuzzy matter element are converted into Fermatean fuzzy numbers that satisfy Fermatean constraints to obtain Fermatean fuzzy matter elements. Calculate the score function of each Fermatean fuzzy number of the Fermatean fuzzy matter element, and convert the score function into a preferred membership degree to obtain a preferred membership degree matrix; Based on the preferred membership matrix, a total fitness function is constructed with the optimization objective of maximizing software quality discrimination. The quantum particle swarm optimization algorithm is used to iteratively optimize the total fitness function, and the optimal weight vector of the evaluation index that maximizes the value of the total fitness function is searched and output. Based on the preferred membership matrix and the optimal weight vector, the net flow value of each software object to be evaluated is calculated using the PROMETHEE method. Based on the net flow value of all software objects to be evaluated, calculate the comprehensive software quality evaluation index, and determine the quality level based on the comprehensive software quality evaluation index; The process of calculating the net current value of each software object to be evaluated using the PROMETHEE method includes: For any two software objects to be evaluated, the difference in their preferred membership degrees on each evaluation index is calculated based on the preferred membership matrix. Based on this difference, the preference intensity on that evaluation index is calculated using a preset preference function. The preference intensity of each evaluation index is weighted and summed using the optimal weight vector to obtain the overall preference index of the former object relative to the latter object. For each software object to be evaluated, the average of its overall preference index relative to all other objects is calculated to obtain the positive flow, and the average of the overall preference index of all other objects relative to it is calculated to obtain the negative flow. The positive flow is subtracted from the negative flow to obtain the net flow value of the software object to be evaluated.

2. The software quality measurement method based on FERMATEAN fuzzy PROMETHEE and quantum particle swarm optimization as described in claim 1, characterized in that, The process of converting the original eigenvalues ​​in a composite fuzzy matter element into Fermatean fuzzy numbers that satisfy Fermatean constraints includes: Calculate the maximum and minimum values ​​of all original feature values ​​under each evaluation index in the composite fuzzy matter element; for each original feature value under a single index, calculate the corresponding membership degree and non-membership degree according to the maximum and minimum values ​​and in combination with the index type, and convert the original feature value into a Fermatean fuzzy number composed of membership degree and non-membership degree.

3. The software quality measurement method based on FERMATEAN fuzzy PROMETHEE and quantum particle swarm optimization as described in claim 2, characterized in that, The process of calculating the score function for each Fermatean fuzzy number and converting it into preferred membership degrees to obtain the preferred membership degree matrix includes: For each Fermatean fuzzy number in the Fermatean fuzzy matter element, a corresponding score function value is calculated based on its membership degree and non-membership degree; based on the score function value, the corresponding preferred membership degree is calculated through a preset linear mapping relationship. The preferred membership matrix is ​​constructed based on all the preferred membership degrees obtained.

4. The software quality measurement method based on FERMATEAN fuzzy PROMETHEE and quantum particle swarm optimization as described in claim 3, characterized in that, For each Fermatean fuzzy number, the difference is obtained by subtracting the cube of the membership degree from the cube of the non-membership degree, and the difference is used as the score function value of the Fermatean fuzzy number.

5. The software quality measurement method based on FERMATEAN fuzzy PROMETHEE and quantum particle swarm optimization as described in claim 1, characterized in that, The overall fitness function consists of a basic fitness term and a diversity penalty term, and its expression is as follows: ; in, The total fitness value including the penalty term; Represents the weight vector The corresponding basic fitness value, where n is the number of evaluation indicators; This is the penalty coefficient; Uniform weighting represents the ideal distribution when all indicators have equal weights; The weight of the j-th indicator deviates from the uniform distribution by the square.

6. The software quality measurement method based on FERMATEAN fuzzy PROMETHEE and quantum particle swarm optimization according to claim 5, characterized in that, Weight vector The corresponding basic fitness values ​​are calculated as follows: In the formula, m represents the number of software objects to be evaluated, and n represents the number of evaluation indicators. Let the degree of preferential membership of the i-th software object to be evaluated on the j-th indicator be denoted as . Let be the average superior membership degree of the j-th indicator among all software objects to be evaluated.

7. The software quality measurement method based on FERMATEAN fuzzy PROMETHEE and quantum particle swarm optimization as described in claim 1, characterized in that, The process of iteratively optimizing the overall fitness function using the quantum particle swarm optimization algorithm, and searching for and outputting the optimal weight vector of the evaluation index that maximizes the overall fitness function value, includes: The parameters of the quantum particle swarm optimization algorithm are initialized and initial particle positions representing candidate weight vectors are randomly generated. In each iteration, the fitness value corresponding to the current position of each particle is calculated based on the total fitness function, and the individual historical best position of each particle and the global historical best position of the entire particle swarm are updated according to the fitness value. The position of each particle is updated based on the quantum update mechanism, and the updated position is normalized to ensure that it meets the constraints of the weight vector. The above iterative process is repeated until the preset termination condition is met, and finally the global historical best position is output as the optimal weight vector.

8. The software quality measurement method based on FERMATEAN fuzzy PROMETHEE and quantum particle swarm optimization according to claim 7, characterized in that, The quantum update mechanism is as follows: The particle position is updated based on its local attraction point, the population average optimal position, and the contraction-expansion coefficient. The local attraction point is obtained by randomly weighting the individual historical optimal position component of the corresponding particle and the global historical optimal position component of the entire particle swarm. The population average optimal position is determined by the average value of the individual historical optimal position components of all particles. The contraction-expansion coefficient decreases linearly with the number of iterations.

9. The software quality measurement method based on FERMATEAN fuzzy PROMETHEE and quantum particle swarm optimization according to claim 1, characterized in that, The process of calculating the comprehensive software quality evaluation index based on the net flow value of all software objects to be evaluated includes: Based on the net inflow values ​​of all software objects to be evaluated, the maximum and minimum net inflow values ​​are determined. For each software object to be evaluated, the net inflow value is normalized based on the maximum and minimum net inflow values ​​to obtain the comprehensive software quality evaluation index of that software object.