Method and apparatus for determining reusability of function points, and device, medium and product
By calculating the similarity parameters between the feature parameter sets of the target software and the benchmark software, the problem of inaccurate function point reusability caused by human experience is solved, and more accurate software evaluation is achieved.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- CHINA MOBILE GROUP DESIGN INST
- Filing Date
- 2024-12-31
- Publication Date
- 2026-04-23
AI Technical Summary
In existing technologies, the value of function point reusability depends on human experience, which leads to a decrease in the accuracy of software evaluation.
By obtaining the feature parameter sets of the target software and the benchmark software, the similarity parameter between the function point to be measured and the benchmark function point is calculated, and their complementary value is used as the reuse degree. The cosine similarity algorithm and the weight of the feature parameter set are used for calculation.
This improves the accuracy of function point measurement and the objectivity of software evaluation, ensuring that reusability values are more comprehensive and objective.
Smart Images

Figure CN2024144292_23042026_PF_FP_ABST
Abstract
Description
Methods, apparatus, equipment, media, and products for determining function point reusability.
[0001] Cross-reference to related applications
[0002] This application is based on and claims priority to Chinese Patent Application No. 202411458637.5, filed on October 18, 2024, the entire contents of which are incorporated herein by reference. Technical Field
[0003] This application belongs to the field of software evaluation technology, specifically relating to a method, apparatus, equipment, medium, and product for determining the reusability of function points. Background Technology
[0004] Software development metrics are a continuous, quantitative process of defining, collecting, and analyzing data on software development projects, processes, and products. The purpose of this process is to understand, predict, evaluate, control, and improve software development activities. Software development metrics include product metrics, which can be used to quantitatively evaluate software products through methods such as function point analysis.
[0005] Generally, software products can be quantitatively evaluated by determining function point reusability. However, the value of function point reusability is often determined based on human experience. Therefore, this reduces the accuracy of software evaluation. Summary of the Invention
[0006] This disclosure is made in view of the above-mentioned problems. This disclosure provides a method, apparatus, device, medium, and product for determining function point reusability, thereby improving the accuracy of software evaluation.
[0007] According to one aspect of this disclosure, a method for determining function point reusability is provided, comprising:
[0008] Obtain the feature parameter set of the target function point to be measured and the feature parameter set of the benchmark function point of the target software indicated by the user. The feature parameter set is used to characterize the functional scale of the function point.
[0009] Based on the feature parameter set of the function point to be measured and the feature parameter set of the benchmark function point, the similarity parameter between the function point to be measured and the benchmark function point is determined.
[0010] The complementary value of the similarity parameter is used as the reusability of the function point to be measured.
[0011] Optionally, determining the similarity parameter between the function point to be measured and the benchmark function point based on the feature parameter set of the function point to be measured and the feature parameter set of the benchmark function point includes:
[0012] Multiple similarity parameter correspondences are obtained, wherein each similarity parameter correspondence represents the number of feature parameter types with the same feature parameter values in the feature parameter groups of the historical function point to be measured and the historical benchmark function point, and the correspondence between the similarity parameters calculated based on the feature parameter groups of the historical function point to be measured and the feature parameter groups of the historical benchmark function point.
[0013] Obtain the number of feature parameter types whose feature parameter values are the same in the feature parameter group of the function point to be measured and the feature parameter group of the benchmark function point;
[0014] From the similarity parameter correspondence, the target correspondence corresponding to the quantity is obtained by matching;
[0015] The similarity parameter of the target correspondence is used as the similarity parameter between the function point to be measured and the benchmark function point.
[0016] Optionally, determining the similarity parameter between the function point to be measured and the benchmark function point based on the feature parameter set of the function point to be measured and the feature parameter set of the benchmark function point includes:
[0017] The feature vector of the function point to be measured is determined based on the feature parameter set of the function point to be measured; the feature vector of the benchmark function point is determined based on the feature parameter set of the benchmark function point; and the weights of each type of feature parameter in the feature parameter set are obtained.
[0018] Based on the cosine similarity algorithm and the weights of each type of feature parameter in the feature parameter group, the similarity parameter between the feature vector of the function point to be measured and the feature vector of the benchmark function point is calculated.
[0019] Optionally, the weights of the function point boundary feature parameters in the feature parameter group are positively correlated with the measurement range of the target software.
[0020] Optionally, the weights of the function point data movement type feature parameters in the feature parameter group are the same as the weights of the function point data group feature parameters in the feature parameter group.
[0021] Optionally, after using the complementary value of the similarity parameter as the reusability of the function point to be measured, the method further includes:
[0022] The target software's functional scale to be measured is calculated based on the size of the preset functional point measurement unit of the target software and the reusability of the functional point to be measured.
[0023] According to another aspect of this disclosure, a function point reuse determination apparatus is provided, comprising:
[0024] The acquisition module is used to acquire the feature parameter set of the target function point to be measured and the feature parameter set of the benchmark function point of the target software indicated by the user. The feature parameter set is used to characterize the functional scale of the function point.
[0025] The determination module is used to determine the similarity parameter between the function point to be measured and the benchmark function point based on the feature parameter set of the function point to be measured and the feature parameter set of the benchmark function point.
[0026] The value retrieval module is used to take the complementary value of the similarity parameter as the reusability of the function point to be measured.
[0027] According to another aspect of this disclosure, an electronic device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the above-described method for determining the reusability of functional points.
[0028] According to another aspect of this disclosure, a computer-readable storage medium is provided having a computer program stored thereon, the program being executed by a processor to implement a method for determining the reusability of the above-described functional points.
[0029] According to another aspect of this disclosure, a computer program product is provided, including computer-readable code, or a non-volatile computer-readable storage medium carrying computer-readable code, wherein when the computer-readable code is run in a processor of an electronic device, the processor in the electronic device executes a method for determining the reusability of implementing the above-described functional points.
[0030] In this disclosure, a set of feature parameters for the target function point to be measured and a set of feature parameters for a baseline function point are obtained, as indicated by the user. The feature parameter sets characterize the functional scale of the function point. Based on the feature parameter sets of the target function point and the baseline function point, a similarity parameter between the target function point and the baseline function point is determined. The complementary value of the similarity parameter is used as the reusability of the target function point. By determining the similarity parameter between two function points, the reusability value can be more comprehensive and objective when determining the reusability of the function point, thus improving the accuracy of function point measurement. Therefore, the accuracy of software evaluation is improved.
[0031] It should be understood that both the foregoing general description and the following detailed description are exemplary and intended to provide further illustration of the claimed technology. Attached Figure Description
[0032] The above and other objects, features, and advantages of this disclosure will become more apparent from the more detailed description of the embodiments thereof in conjunction with the accompanying drawings. The drawings are provided to further illustrate the embodiments of this disclosure and form part of the specification. They are used together with the embodiments of this disclosure to explain the disclosure and do not constitute a limitation thereof. In the drawings, the same reference numerals generally represent the same components or steps.
[0033] Figure 1 is a flowchart of a method for determining the reusability of function points provided in this disclosure.
[0034] Figure 2 is another flowchart of a method for determining the reusability of function points provided in this disclosure.
[0035] Figure 3 is a schematic diagram of the structure of a device for determining the reusability of function points provided in this disclosure.
[0036] Figure 4 is a hardware block diagram of an electronic device provided in this disclosure.
[0037] Figure 5 is a schematic diagram of a computer program product provided in this disclosure. Detailed Implementation
[0038] To enable those skilled in the art to better understand the technical solution of this application, the application scenario of this application will be described first below.
[0039] Software development metrics are a continuous, quantitative process of defining, collecting, and analyzing data on software development projects, processes, and products. The purpose of this process is to understand, predict, evaluate, control, and improve software development activities. Software development metrics include product metrics, which can be used to quantitatively evaluate software products through methods such as function point analysis.
[0040] Currently, software products can be quantitatively evaluated by determining function point reusability. However, the value of function point reusability is often determined based on human experience. For example, if two function points have all three characteristic parameters that are completely identical, the reusability value is 0; if any two of the three characteristic parameters are identical between two function points, the reusability value is 1 / 3; if the three characteristic parameters are completely different between two function points, the reusability value is 1. Determining reusability based on human experience introduces a degree of subjectivity, thus reducing the accuracy of software evaluation.
[0041] To address the aforementioned technical problems, this disclosure provides a method, apparatus, device, medium, and product for determining the reusability of function points. In this disclosure, a set of characteristic parameters for a function point to be measured and a set of characteristic parameters for a baseline function point of the target software, as indicated by the user, are obtained. The characteristic parameter sets characterize the functional scale of the function point. Based on the characteristic parameter sets of the function point to be measured and the baseline function point, a similarity parameter between the function point to be measured and the baseline function point is determined. The complementary value of the similarity parameter is used as the reusability of the function point to be measured. By determining the similarity parameter between two function points, the reusability value can be more comprehensive and objective when determining the reusability of function points, improving the accuracy of function point measurement. Therefore, the accuracy of software evaluation is improved.
[0042] To make the objectives, technical solutions, and advantages of this disclosure more apparent, exemplary embodiments according to this disclosure will now be described in detail with reference to the accompanying drawings. Obviously, the described embodiments are merely some embodiments of this disclosure, and not all embodiments of this disclosure. It should be understood that this disclosure is not limited to the exemplary embodiments described herein.
[0043] Figure 1 is a flowchart of a method for determining function point reusability provided in this disclosure. As shown in Figure 1, the method includes:
[0044] S101: Obtain the feature parameter set of the target function point to be measured and the feature parameter set of the baseline function point of the target software as indicated by the user.
[0045] Specifically, in the process of measuring the development cost of target software, the development cost can be estimated by measuring the functional scale of the target software. In this embodiment, the COSMIC model can be used to measure the functional scale of the target software. The user can specify the scope of the measurement and the purpose of the measurement. The scope of the measurement refers to the functional points to be measured, which can be input in the form of the target software's requirements document. The purpose of the measurement is to determine the scale of the target software.
[0046] When measuring a function point, a baseline function point is needed as a reference to compare its reusability. The baseline function point can be a function point in the target software specified by the user. Typically, the user can select a function point whose description is closest to that of the function point to be measured, based on the function description in the target software's requirements document.
[0047] After obtaining the target function point and baseline function point of the user-indicated software, the characteristic parameter set of each function point can be identified and obtained. The characteristic parameter set characterizes the functional scale of the function point. The characteristic parameter set includes the function point's layer boundary characteristic parameters, data movement category characteristic parameters, and data set characteristic parameters.
[0048] The function point's layer boundary characteristic parameter represents the software layer boundary of the functional processing it belongs to. A software layer is a partition created by the functional division of a software system; it identifies the distribution of software functions across different levels of the operating environment. Each layer of software should provide functionality to the user. The boundary is the conceptual interface between the software and its functional users; it identifies the boundary between the measurement object and the functional user. By identifying whether data crosses software layers and boundaries, it is determined whether data movement has occurred. The function point's data movement category characteristic parameter represents the type of data movement to which the function point belongs, i.e., any one of the four types (input, output, read, and write). The function point's data group characteristic parameter represents the data group moved by the function point, i.e., the data type required by the user and its various data attributes.
[0049] For example, the user-indicated baseline function point is to query the number of communities within a province, and the function point to be measured is to query the number of grid cells within a province. The baseline function point's layer boundary characteristic parameters are: data from the user to the software layer; data movement category characteristic parameter is the read type; data group characteristic parameter is the number of communities within the province; and the data attribute is the number of communities within the province. Similarly, the function point to be measured's layer boundary characteristic parameters are: data from the user to the software layer; data movement category characteristic parameter is the read type; data group characteristic parameter is the number of grid cells within the province; and the data attribute is the number of grid cells within the province.
[0050] S102: Based on the feature parameter set of the function point to be measured and the feature parameter set of the benchmark function point, determine the similarity parameter between the function point to be measured and the benchmark function point.
[0051] Specifically, the feature parameter set of the function point to be measured can be set as a three-dimensional vector, and the feature parameter set of the benchmark function point can be set as a three-dimensional vector. By comparing the similarity between the two vectors, the similarity parameter between the function point to be measured and the benchmark function point can be determined.
[0052] S103: Use the complementary value of the similarity parameter as the reusability of the function point to be measured.
[0053] Specifically, the result of function point measurement is the function point size. In this paper, the size of a single function point is equal to 1 * the reusability of that function point. The higher the similarity between two function points, the less development work is required for the target software, the lower the function point reusability value, and the smaller the function point size count. Therefore, the complementary value of the similarity parameter needs to be used as the reusability of the function point to be measured. In other words, the larger the similarity parameter, the less development work is required, and the lower the function point reusability.
[0054] For example, if the similarity parameter is 'a', then its complementarity value is b = 1 - a, and b is the reusability value of the function point to be measured. If there is a baseline function point A and a function point B to be measured, and we want to calculate the function point size of B, the similarity parameter between B and A calculated using the method described above in this application is 0.6. Therefore, the reusability value of B is 1 - 0.6 = 0.4, so the function point size of B is 1 * reusability = 1 * 0.4 = 0.4.
[0055] In this disclosure, a set of feature parameters for the target function point to be measured and a set of feature parameters for a baseline function point are obtained, as indicated by the user. The feature parameter sets characterize the functional scale of the function point. Based on the feature parameter sets of the target function point and the baseline function point, a similarity parameter between the target function point and the baseline function point is determined. The complementary value of the similarity parameter is used as the reusability of the target function point. By determining the similarity parameter between two function points, the reusability value can be more comprehensive and objective when determining the reusability of the function point, thus improving the accuracy of function point measurement. Therefore, the accuracy of software evaluation is improved.
[0056] In one possible embodiment, an exemplary method for determining the similarity parameter between the function point to be measured and the benchmark function point based on the feature parameter set of the function point to be measured and the feature parameter set of the benchmark function point includes:
[0057] The feature vector of the function to be measured is determined based on the feature parameter set of the function to be measured; the feature vector of the benchmark function is determined based on the feature parameter set of the benchmark function; and the weights of each type of feature parameter in the feature parameter set are obtained.
[0058] Specifically, after obtaining the feature parameter set of the function point to be measured and the feature parameter set of the baseline function point, the feature parameter set can be represented in the form of a multi-dimensional vector.
[0059] For example, the feature vector of the function point to be measured can be G1 = (C1, Y1, D1), and the feature vector of the baseline function point can be G2 = (C2, Y2, D2). Here, G1 is the feature vector of the function point to be measured, C1 is the vector of the layer boundary feature parameters of the function point to be measured, Y1 is the vector of the data movement type feature parameters of the function point to be measured, and D1 is the vector of the data group feature parameters of the function point to be measured; G2 is the feature vector of the baseline function point, C2 is the vector of the layer boundary feature parameters of the baseline function point, Y2 is the vector of the data movement type feature parameters of the baseline function point, and D2 is the vector of the data group feature parameters of the baseline function point.
[0060] Furthermore, different weights for various feature parameters can be set according to the measurement range of different target software. For example, when the measurement range is a functional module, the weight of the layer boundary feature parameter can be 20%, the weight of the data movement type feature parameter can be 30%, and the weight of the data group feature parameter can be 30%. In this embodiment, considering the possibility of other parameter factors affecting similarity, the weight of other parameters is set to 20%.
[0061] In at least one embodiment of this application, the weights of the various types of feature parameters may be the same.
[0062] Then, based on the cosine similarity algorithm and the weights of each type of feature parameter in the feature parameter group, the similarity parameter between the feature vector of the function point to be measured and the feature vector of the benchmark function point is calculated.
[0063] Specifically, the similarity parameter can be calculated using the following formula:
[0064] Where cosθ is the similarity parameter between the feature vector of the function point to be measured and the feature vector of the baseline function point, C1 is the vector of the layer boundary feature parameters of the function point to be measured, Y1 is the vector of the data movement type feature parameters of the function point to be measured, D1 is the vector of the data group feature parameters of the function point to be measured, C2 is the vector of the layer boundary feature parameters of the baseline function point, Y2 is the vector of the data movement type feature parameters of the baseline function point, D2 is the vector of the data group feature parameters of the baseline function point, and R... c1 R represents the weights of the layer boundary feature parameters of the function points to be measured. y1 R represents the weights of the data movement type feature parameters for the function points to be measured. d1 R represents the weights of the feature parameters of the data set for the function points to be measured. c2 The weights of the data movement type feature parameters for the baseline function point, R y2 The weights of the feature parameters of the data set for the baseline function point, R d2 The weights of the feature parameters of the data group for the baseline function point.
[0065] Furthermore, in one possible embodiment, when determining the similarity parameter between the function point to be measured and the benchmark function point based on the feature parameter set of the function point to be measured and the feature parameter set of the benchmark function point, the weight of each type of feature parameter in the feature parameter set may not be considered.
[0066] The similarity parameter can be calculated using the following formula:
[0067] Wherein, cosθ is the similarity parameter between the feature vector of the function point to be measured and the feature vector of the baseline function point, C1 is the vector of the layer boundary feature parameters of the function point to be measured, Y1 is the vector of the data movement type feature parameters of the function point to be measured, D1 is the vector of the data group feature parameters of the function point to be measured, C2 is the vector of the layer boundary feature parameters of the baseline function point, Y2 is the vector of the data movement type feature parameters of the baseline function point, and D2 is the vector of the data group feature parameters of the baseline function point.
[0068] In one possible embodiment, an exemplary method for determining the similarity parameter between the function point to be measured and the benchmark function point based on the feature parameter set of the function point to be measured and the feature parameter set of the benchmark function point includes:
[0069] Obtain the correspondence between multiple similarity parameters.
[0070] Among them, the correspondence of each similarity parameter represents the number of feature parameter types with the same feature parameter value in the feature parameter groups of the historical function point to be measured and the historical benchmark function point, and the correspondence between them and the similarity parameters calculated based on the feature parameter groups of the historical function point to be measured and the feature parameter groups of the historical benchmark function point.
[0071] Specifically, in this embodiment, a similarity parameter can be calculated based on the feature parameter set of the historical function point to be measured and the feature parameter set of the historical benchmark function point. Based on the three feature parameter types, there may be several situations where the feature parameters are similar: the three feature parameters of the two function points are completely identical; the two feature parameters of the two function points are identical; the two function points have one identical feature parameter; and the three feature parameters of the two function points are completely different.
[0072] Based on the similarity among these four feature parameter types, the number of feature parameter types with the same feature parameter value can be determined.
[0073] For example, when the three characteristic parameters of two function points are exactly the same, it means that the two functions are exactly the same. In this case, C1 = C2, Y1 = Y2, D1 = D2, and cosθ = 1. When the two characteristic parameters of two function points are the same, it means that most of the functions are similar. In this case, there are three situations: First, C1 ≠ C2, Y1 = Y2, D1 = D2, then cosθ = 0.9045; second, C1 = C2, Y1 ≠ Y2, D1 = D2, then cosθ = 0.7687; third, C1 = C2, Y1 = Y2, D1 ≠ D2, then cosθ = 0.7687. When two function points share the same characteristic parameter, it indicates that a small portion of their functions are similar. This can be categorized into three cases: First, C1 = C2, Y1 ≠ Y2, D1 ≠ D2, resulting in cosθ = 0.4264; second, C1 ≠ C2, Y1 = Y2, D1 ≠ D2, resulting in cosθ = 0.6396; and third, C1 ≠ C2, Y1 ≠ Y2, D1 = D2, resulting in cosθ = 0.6396. When all three characteristic parameters of two function points are completely different, it indicates that the two functions are entirely different. In this case, C1 ≠ C2, Y1 ≠ Y2, D1 ≠ D2, resulting in cosθ = 0.
[0074] When obtaining the correspondence, the three cases where the two feature parameters of the two function points are the same can be recorded separately, or the average of the three cases can be calculated. This facilitates calculation and improves computational efficiency. Similarly, we can derive a method for recording the three cases where two function points have the same characteristic parameter, with the average value being...
[0075] Next, the number of feature parameter types with the same feature parameter values in the feature parameter group of the function point to be measured and the feature parameter group of the benchmark function point is obtained; from the similarity parameter correspondence, the target correspondence corresponding to the number is obtained; the similarity parameter of the target correspondence is used as the similarity parameter between the function point to be measured and the benchmark function point.
[0076] Specifically, when obtaining the number of feature parameter types with the same feature parameter values in the feature parameter set of the function point to be measured and the feature parameter set of the benchmark function point, a target correspondence corresponding to the number of similar feature parameters can be found from the similarity parameter correspondence obtained above, and the similarity parameter of the target correspondence can be used as the expected similarity parameter. In this way, the computational complexity can be reduced, the efficiency of reusability determination can be improved, and thus the evaluation efficiency of the target software can be improved.
[0077] In one possible embodiment, the weights of the function point boundary feature parameters in the feature parameter set are positively correlated with the metric range of the target software.
[0078] Specifically, the measurement scope of the target software can include the following situations: measuring the scale of the target software system, measuring the scale of the target software subsystem, and measuring the scale of the target software functional modules.
[0079] When the measurement scope is a functional module, it means that the boundary feature parameters of the functional point to be measured and the baseline functional point are the same. In this case, when determining similarity, there is no need to consider the boundary feature parameter dimension too much, and therefore the weight value of this feature parameter is relatively low. When the measurement scope is a subsystem, the user-specified module to be measured and the baseline functional point module may be at different boundaries, so the boundary feature parameters may be different. In this case, the proportion of the boundary feature parameter dimension will be higher than when the measurement scope is a functional module, and the weight value will also increase accordingly.
[0080] For example, when the measurement range is a functional module, it means that the layer boundary feature parameters of the functional point to be measured are the same as those of the baseline functional point. The weight of the layer boundary feature parameters can be 20%, which can improve the accuracy of the reusability of functional points.
[0081] In one possible embodiment, the weights of the function point data movement type feature parameters in the feature parameter group are the same as the weights of the function point data group feature parameters in the feature parameter group.
[0082] Specifically, for different function points, the data movement type characteristic parameters and data group characteristic parameters may differ under any circumstances, and both characteristic parameters need to be considered. Furthermore, these two characteristic parameters are of similar importance. In this embodiment, the weights of the two characteristic parameters can be set to the same value, which can improve the accuracy of function point reusability.
[0083] For example, when the measurement range is a functional module, the weight of the layer boundary feature parameter can be 20%, the weight of the data movement type feature parameter can be 30%, and the weight of the data group feature parameter can be 30%.
[0084] In one possible embodiment, after using the complementary values of the similarity parameter as the reusability of the function point to be measured, the method further includes:
[0085] The target software's functional scale to be measured is calculated based on the size of the preset functional point measurement unit and the reusability of the functional points to be measured.
[0086] Specifically, after obtaining the reusability of the function points of the target software, the target software's measurable function size can be calculated based on the required range of the target software's measurable function size. By utilizing the preset function point measurement unit size and the reusability of each measurable function point within the required range, the target software's measurable function size can be obtained. The function point reusability obtained by calculating similarity parameters can be more accurate, comprehensive, and objective, thereby improving the accuracy of the target software's function size assessment. In this embodiment, the default value for the function point unit size is 1 function point.
[0087] The size of the target software's metric function can be calculated using the following formula:
[0088] Where FS represents the functional scale of the target software, i represents the number of function points whose data movement type is input, j represents the number of function points whose data movement type is output, m represents the number of function points whose data movement type is read, n represents the number of function points whose data movement type is write, and Eus i For function point data movement types that are input types, the function point metric unit size is Xus. j For function point data movement types that are output types, the function point metric unit size is Rus m For function points whose data movement type is read, the function point metric unit size is Wus. n For function points where the data movement type is write, the function point metric unit size is FPR. i For the reusability of data movement type as input type for function points, FPR j FPR is the reusability of data movement type for function points as output type. m For the data movement type of the function point, the reusability is FPR (Function Point Replication). n The data movement type for function points is the reusability of the write type.
[0089] Figure 2 is another flowchart of a method for determining function point reusability provided in this disclosure. As shown in Figure 2, the method includes:
[0090] S201: Obtain the measurement purpose and measurement range specified by the user.
[0091] Specifically, users can specify the scope and purpose of the measurement for the target software. The scope of measurement refers to the functional points to be measured, and the purpose of measurement can be entered in the form of the target software's requirements document.
[0092] S202: Identify the feature parameter sets of the function point to be measured and the baseline function point.
[0093] Specifically, after obtaining the target function point and baseline function point of the target software as indicated by the user, the characteristic parameter set of each function point can be identified and obtained. The characteristic parameter set is used to characterize the functional scale of the function point.
[0094] S203: Determine the reusability of the function point to be measured.
[0095] Specifically, the feature parameter set of the function point to be measured can be set as a three-dimensional vector, and the feature parameter set of the benchmark function point can be set as a three-dimensional vector. By comparing the similarity between the two vectors, the similarity parameter between the function point to be measured and the benchmark function point can be determined.
[0096] The higher the similarity between two functional points, the less development work is required for the target software, and the smaller the functional scale count of the functional points. Therefore, the complementary value of the similarity parameter needs to be used as the reusability of the functional points to be measured.
[0097] S204: Summarize the reusability and number of function points of the target software.
[0098] Specifically, after obtaining the reusability of each function point to be measured in S203, the reusability of all function points of the target software and the total number of function points are summarized to calculate the functional scale of the target software.
[0099] S205: Calculate the functional scale of the target software.
[0100] By summing all reusability values, the functional scale of the target software can be obtained. Calculating the reusability of functional points using similarity parameters provides a more accurate, comprehensive, and objective assessment, thereby improving the accuracy of the functional scale evaluation of the target software.
[0101] Figure 3 is a schematic diagram of a device for determining the reusability of function points provided in this disclosure. As shown in Figure 3, the device 300 includes: an acquisition module 310, a determination module 320, and a value retrieval module 330.
[0102] The acquisition module 310 is used to acquire the feature parameter set of the target function point to be measured and the feature parameter set of the benchmark function point of the target software indicated by the user. The feature parameter set is used to characterize the functional scale of the function point.
[0103] The determination module 320 is used to determine the similarity parameter between the function point to be measured and the benchmark function point based on the feature parameter set of the function point to be measured and the feature parameter set of the benchmark function point.
[0104] The value retrieval module 330 is used to take the complementary value of the similarity parameter as the reusability of the function point to be measured.
[0105] Optionally, the determining module is used to:
[0106] Multiple similarity parameter correspondences are obtained, wherein each similarity parameter correspondence represents the number of feature parameter types with the same feature parameter values in the feature parameter groups of the historical function point to be measured and the historical benchmark function point, and the correspondence between the similarity parameters calculated based on the feature parameter groups of the historical function point to be measured and the feature parameter groups of the historical benchmark function point.
[0107] Obtain the number of feature parameter types whose feature parameter values are the same in the feature parameter group of the function point to be measured and the feature parameter group of the benchmark function point;
[0108] From the similarity parameter correspondence, the target correspondence corresponding to the quantity is obtained by matching;
[0109] The similarity parameter of the target correspondence is used as the similarity parameter between the function point to be measured and the benchmark function point.
[0110] Optionally, the determining module is used to:
[0111] The feature vector of the function point to be measured is determined based on the feature parameter set of the function point to be measured; the feature vector of the benchmark function point is determined based on the feature parameter set of the benchmark function point; and the weights of each type of feature parameter in the feature parameter set are obtained.
[0112] Based on the cosine similarity algorithm and the weights of each type of feature parameter in the feature parameter group, the similarity parameter between the feature vector of the function point to be measured and the feature vector of the benchmark function point is calculated.
[0113] Optionally, the weights of the function point boundary feature parameters in the feature parameter group of the device are positively correlated with the measurement range of the target software.
[0114] Optionally, the weight of the function point data movement type feature parameter in the feature parameter group of the device is the same as the weight of the function point data group feature parameter in the feature parameter group.
[0115] Optionally, the device is further used for:
[0116] After using the complementary value of the similarity parameter as the reusability of the function point to be measured,
[0117] The target software's functional scale to be measured is calculated based on the size of the preset functional point measurement unit of the target software and the reusability of the functional point to be measured.
[0118] This application also provides an electronic device for performing the above-described function reuse determination method. Please refer to FIG4, which shows a schematic diagram of an electronic device provided by some embodiments of this application. As shown in FIG4, the electronic device 40 includes: a processor 400, a memory 401, a bus 402, and a communication interface 403. The processor 400, the communication interface 403, and the memory 401 are connected via the bus 402. The memory 401 stores a computer program that can run on the processor 400. When the processor 400 runs the computer program, it executes the function reuse determination method provided by any of the foregoing embodiments of this application.
[0119] The memory 401 may include high-speed random access memory (RAM) or non-volatile memory, such as at least one disk storage device. Communication between this device network element and at least one other network element is achieved through at least one communication interface 403 (which can be wired or wireless), such as the Internet, wide area network, local area network, metropolitan area network, etc.
[0120] Bus 402 can be an ISA bus, PCI bus, or EISA bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. The memory 401 is used to store programs. After receiving an execution instruction, the processor 400 executes the program. The function point reuse determination method disclosed in any of the foregoing embodiments of this application can be applied to the processor 400, or implemented by the processor 400.
[0121] The processor 400 may be an integrated circuit chip with signal processing capabilities. In implementation, each step of the above method can be completed by the integrated logic circuitry in the hardware of the processor 400 or by instructions in software form. The processor 400 may be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it may also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), an off-the-shelf programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor may be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly embodied in the execution of a hardware decoding processor, or executed by a combination of hardware and software modules in the decoding processor. The software modules may reside in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. The storage medium is located in memory 401. The processor 400 reads the information in memory 401 and, in conjunction with its hardware, completes the steps of the above method.
[0122] The electronic device provided in this application embodiment and the function point reuse determination method provided in this application embodiment are based on the same inventive concept and have the same beneficial effects as the methods they adopt, operate or implement.
[0123] This application also provides a computer-readable storage medium corresponding to the function point reuse determination method provided in the foregoing embodiments. The computer-readable storage medium shown can be an optical disc, on which a computer program is stored. When the computer program is run by a processor, it executes the function point reuse determination method provided in any of the foregoing embodiments.
[0124] It should be noted that examples of the computer-readable storage medium may also include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other optical and magnetic storage media, which will not be elaborated here.
[0125] The computer-readable storage medium provided in the above embodiments of this application and the function point reuse determination method provided in the embodiments of this application are based on the same inventive concept and have the same beneficial effects as the methods adopted, run or implemented by the application stored therein.
[0126] This application also provides a computer program product 500, as shown in FIG5. This computer program product carries a computer program 501, the instructions of which can be used to execute the steps of the function point reuse determination method described in the above method embodiments. For details, please refer to the above method embodiments, which will not be repeated here.
[0127] The aforementioned computer program product can be implemented through hardware, software, or a combination thereof. In one optional embodiment, the computer program product is specifically embodied in a computer storage medium; in another optional embodiment, the computer program product is specifically embodied in a software product, such as a software development kit (SDK), etc.
[0128] The basic principles of this disclosure have been described above with reference to specific embodiments. However, it should be noted that the advantages, benefits, and effects mentioned in this disclosure are merely examples and not limitations, and should not be considered as essential features of each embodiment of this disclosure. Furthermore, the specific details disclosed above are for illustrative and facilitative purposes only, and are not limitations. These details do not limit the scope of this disclosure to the necessity of employing the aforementioned specific details for implementation.
[0129] The block diagrams of devices, apparatuses, devices, and systems disclosed herein are merely illustrative examples and are not intended to require or imply that they must be connected, arranged, or configured in the manner shown in the block diagrams. As those skilled in the art will recognize, these devices, apparatuses, devices, and systems can be connected, arranged, and configured in any manner. Words such as “comprising,” “including,” “having,” etc., are open-ended terms meaning “including but not limited to,” and are used interchangeably with them. The terms “or” and “and” as used herein refer to the terms “and / or,” and are used interchangeably with them unless the context clearly indicates otherwise. The term “such as” as used herein refers to the phrase “such as but not limited to,” and is used interchangeably with it.
[0130] Additionally, as used herein, the “or” used in a list of items beginning with “at least one” indicates a separate list, such that a list of, for example, “at least one of A, B, or C” means A or B or C, or AB or AC or BC, or ABC (i.e., A and B and C). Furthermore, the word “exemplary” does not imply that the described example is preferred or better than other examples.
[0131] It should also be noted that in the systems and methods of this disclosure, the components or steps can be decomposed and / or recombined. These decompositions and / or recombinations should be considered as equivalent solutions to this disclosure.
[0132] Various changes, substitutions, and modifications can be made to the technology described herein without departing from the teachings defined by the appended claims. Furthermore, the scope of the claims of this disclosure is not limited to the specific aspects of the processes, machines, manufactures, events, means, methods, and actions described above. Currently existing or later-developed processes, machines, manufactures, events, means, methods, or actions that perform substantially the same function or achieve substantially the same result as the corresponding aspects described herein can be utilized. Therefore, the appended claims include such processes, machines, manufactures, events, means, methods, or actions within their scope.
[0133] The above description of the disclosed aspects is provided to enable any person skilled in the art to make or use this disclosure. Various modifications to these aspects will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other aspects without departing from the scope of this disclosure. Therefore, this disclosure is not intended to be limited to the aspects shown herein, but rather to be carried out within the widest scope consistent with the principles and novel features disclosed herein.
[0134] The above description has been given for purposes of illustration and description. Furthermore, this description is not intended to limit the embodiments of this disclosure to the forms disclosed herein. Although numerous exemplary aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, alterations, additions, and sub-combinations thereof.
Claims
1. A method for determining function point reusability, comprising: Obtain the feature parameter set of the target function point to be measured and the feature parameter set of the baseline function point of the target software indicated by the user; wherein, the feature parameter set is used to characterize the functional scale of the function point; Based on the feature parameter set of the function point to be measured and the feature parameter set of the benchmark function point, the similarity parameter between the function point to be measured and the benchmark function point is determined. The complementary value of the similarity parameter is used as the reusability of the function point to be measured.
2. The method according to claim 1, wherein the feature parameter group includes at least one of the following: function point boundary feature parameters, function point data movement type feature parameters, and function point data group feature parameters.
3. The method according to claim 1 or 2, wherein determining the similarity parameter between the function point to be measured and the benchmark function point based on the feature parameter set of the function point to be measured and the feature parameter set of the benchmark function point includes: Obtain at least one similarity parameter correspondence, wherein each similarity parameter correspondence represents the number of feature parameter types with the same feature parameter values in the feature parameter groups of the historical function point to be measured and the historical benchmark function point, and the correspondence between the similarity parameter calculated based on the feature parameter groups of the historical function point to be measured and the feature parameter groups of the historical benchmark function point; Obtain the number of feature parameter types whose feature parameter values are the same in the feature parameter group of the function point to be measured and the feature parameter group of the benchmark function point; From the similarity parameter correspondence, the target correspondence corresponding to the quantity is obtained by matching; The similarity parameter of the target correspondence is used as the similarity parameter between the function point to be measured and the benchmark function point.
4. The method according to claim 1 or 2, wherein determining the similarity parameter between the function point to be measured and the benchmark function point based on the feature parameter set of the function point to be measured and the feature parameter set of the benchmark function point includes: The first feature vector of the function point to be measured is determined based on the feature parameter set of the function point to be measured, and the second feature vector of the benchmark function point is determined based on the feature parameter set of the benchmark function point. The similarity between the first feature vector and the second feature vector is determined, and the similarity is used as a similarity parameter between the function point to be measured and the benchmark function point.
5. The method according to claim 4, wherein determining the similarity between the first feature vector and the second feature vector, and using the similarity as a similarity parameter between the function point to be measured and the benchmark function point, comprises: Obtain the weights of each type of feature parameter in the feature parameter group; Based on the cosine similarity algorithm and the weights of each type of feature parameter in the feature parameter group, the similarity between the feature vector of the function point to be measured and the feature vector of the benchmark function point is calculated, and the similarity is used as the similarity parameter between the function point to be measured and the benchmark function point.
6. The method according to claim 5, wherein the feature parameter group includes at least function point boundary feature parameters, and the weight of the function point boundary feature parameters is positively correlated with the measurement range of the target software.
7. The method according to claim 5, wherein the feature parameter group includes at least function point data movement type feature parameters and function point data group feature parameters, and the weight of the function point data movement type feature parameters is the same as the weight of the function point data group feature parameters in the feature parameter group.
8. The method according to any one of claims 1-7, wherein after using the complementary value of the similarity parameter as the reusability of the function point to be measured, the method further comprises: The target software's functional scale to be measured is calculated based on the size of the preset functional point measurement unit of the target software and the reusability of the functional point to be measured.
9. A method for determining function point reusability, comprising: Obtain the measurement purpose and measurement range specified by the user, wherein the measurement purpose includes determining the functional scale of the target software, and the measurement range includes the functional points to be measured; Identify the feature parameter set of the function point to be measured and the feature parameter set of the reference function point; Based on the feature parameter set of the function point to be measured and the feature parameter set of the benchmark function point, the similarity parameter between the function point to be measured and the benchmark function point is determined. The complementary value of the similarity parameter is used as the reusability of the function point to be measured; The number of function points in the target software and the reusability of each function point in the target software are summarized based on the reusability of the function points to be measured.
10. The method of claim 9, further comprising: The functional scale of the target software is calculated based on the number of functional points and the reusability of each functional point.
11. A device for determining the reusability of function points, comprising: The acquisition module is used to acquire the feature parameter set of the target function point to be measured and the feature parameter set of the benchmark function point of the target software indicated by the user. The feature parameter set is used to characterize the functional scale of the function point. The determination module is used to determine the similarity parameter between the function point to be measured and the benchmark function point based on the feature parameter set of the function point to be measured and the feature parameter set of the benchmark function point. The value retrieval module is used to take the complementary value of the similarity parameter as the reusability of the function point to be measured.
12. The apparatus according to claim 11, wherein the feature parameter group includes at least one of the following: function point boundary feature parameters, function point data movement type feature parameters, and function point data group feature parameters.
13. The apparatus according to claim 11 or 12, wherein the determining module is configured to: Obtain at least one similarity parameter correspondence, where, Each similarity parameter correspondence represents the number of feature parameter types with the same feature parameter values in the feature parameter groups of the historical function point to be measured and the historical benchmark function point, and the correspondence between them and the similarity parameters calculated based on the feature parameter groups of the historical function point to be measured and the feature parameter groups of the historical benchmark function point. Obtain the number of feature parameter types whose feature parameter values are the same in the feature parameter group of the function point to be measured and the feature parameter group of the benchmark function point; From the similarity parameter correspondence, the target correspondence corresponding to the quantity is obtained by matching; The similarity parameter of the target correspondence is used as the similarity parameter between the function point to be measured and the benchmark function point.
14. The apparatus according to claim 11 or 12, wherein the determining module is configured to: The first feature vector of the function point to be measured is determined based on the feature parameter set of the function point to be measured, and the second feature vector of the benchmark function point is determined based on the feature parameter set of the benchmark function point. The similarity between the first feature vector and the second feature vector is determined, and the similarity is used as a similarity parameter between the function point to be measured and the benchmark function point.
15. The apparatus according to claim 14, wherein the determining module is configured to: Obtain the weights of each type of feature parameter in the feature parameter group; Based on the cosine similarity algorithm and the weights of each type of feature parameter in the feature parameter group, the similarity between the feature vector of the function point to be measured and the feature vector of the benchmark function point is calculated, and the similarity is used as the similarity parameter between the function point to be measured and the benchmark function point.
16. The apparatus according to claim 15, wherein the feature parameter set includes at least a function point boundary feature parameter, and the weight of the function point boundary feature parameter is positively correlated with the measurement range of the target software.
17. The apparatus according to claim 15, wherein the feature parameter group includes at least a function point data movement type feature parameter and a function point data group feature parameter, and the weight of the function point data movement type feature parameter is the same as the weight of the function point data group feature parameter in the feature parameter group.
18. The apparatus according to any one of claims 11-17, further comprising: The calculation module is used to calculate the size of the target software's function to be measured based on the size of the function point measurement unit preset in the target software and the reusability of the function point to be measured, after taking the complementary value of the similarity parameter as the reusability of the function point to be measured.
19. A device for determining the reusability of function points, comprising: The acquisition module is used to acquire the measurement purpose and measurement range specified by the user, wherein the measurement purpose includes determining the functional scale of the target software, and the measurement range includes the functional points to be measured. The identification module is used to identify the feature parameter set of the function point to be measured and the feature parameter set of the reference function point; The determination module is used to determine the similarity parameter between the function point to be measured and the benchmark function point based on the feature parameter set of the function point to be measured and the feature parameter set of the benchmark function point, and to use the complementary value of the similarity parameter as the reusability of the function point to be measured. The summary module is used to summarize the number of function points of the target software and the reusability of each function point of the target software based on the reusability of the function points to be measured.
20. The apparatus of claim 19, further comprising: The functional scale determination module is used to calculate the functional scale of the target software based on the number of functional points of the target software and the reusability of each functional point.
21. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, the processor executing the computer program to implement the method as claimed in any one of claims 1-10.
22. A non-transient computer-readable storage medium having a computer program stored thereon, the program being executed by a processor to implement the method as described in any one of claims 1-10.
23. A computer program product comprising computer-readable code, or a non-volatile computer-readable storage medium carrying the computer-readable code, wherein when the computer-readable code is run in a processor of an electronic device, the processor in the electronic device performs any one of claims 1-10.
Citation Information
Patent Citations
Software function point duplicate checking method and device based on neural network, equipment and medium
CN115936003A
Workload determination method and device of target use case, equipment and storage medium
CN117611013A
Software workload assessment method and device, electronic equipment and storage medium
CN118093376A
Workload assessment and configuration simulator
US20220004427A1