Software function point identification method fusing large model and multiple clustering analysis
By constructing a hierarchical semantic tree and using multiple clustering analysis, combined with large-scale model identification and review of functional points, the problem of subjective bias and low review efficiency in functional point decomposition in software engineering is solved, achieving accurate extraction and efficient deduplication of functional points.
Patent Information
- Application Number
- CN202511626284.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-07
- Publication Date
- 2026-02-06
AI Technical Summary
Existing technologies in software engineering requirements management suffer from several drawbacks, including reliance on human experience in breaking down functional points, leading to subjective biases; inconsistent naming practices, making it difficult to ensure accuracy; and low review efficiency. In particular, they have significant shortcomings in identifying implicit requirements and verifying the deduplication of functional points across systems.
By employing a method that integrates large-scale models and multiple clustering analysis, feature information is obtained by constructing a hierarchical semantic tree of documents. This is combined with the large-scale model to identify candidate functional points, and then differentiated through multiple clustering and co-relationship matrices to achieve accurate extraction and review of functional points.
It significantly improves the accuracy of deduplication of functional points, solves the problems of subjective bias and naming inconsistencies caused by the reliance on human experience in functional decomposition, and improves the efficiency of review.
Smart Images

Figure CN121479564A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of software engineering requirements management technology, and in particular to a method for identifying software function points that integrates large models and multiple clustering analysis. Background Technology
[0002] In the field of software engineering requirements management and budget assessment, the manual experience-based approach under national standards such as the "NESMA Method for Functional Size Measurement in Systems and Software Engineering" (GB / T 42588-2023) is generally adopted. The disadvantages of this approach are that functional decomposition relies on manual experience, which leads to subjective bias; naming consistency is difficult to guarantee; review efficiency is low; and there are obvious shortcomings in the identification of implicit requirements and cross-system functional point deduplication verification. There is an urgent need for an intelligent and standardized approach to cope with the complex requirements of software engineering requirements analysis.
[0003] Existing technologies also employ large models to address existing problems. For example, patent application number 202110142430.7, entitled "Method and System for Structured Extraction of Functional Points of Transaction Types from Software Requirements Documents," discloses a method of preprocessing the document to obtain requirement statement data, inputting it into a pre-trained model, and outputting the identified functional point trigger words and categories. The trigger words are then input into the model, which outputs functional point arguments and categories. The trigger words and arguments are combined to obtain functional point phrases, which are then input into the model to output probability values. Suitable functional point phrases are then selected based on these probability values. While this patent uses a large model to identify functional points in the document, it lacks the ability to identify duplicate or similar functional points. The output functional points exhibit duplication and similarity, leading to inaccuracies in software budget calculations. Summary of the Invention
[0004] This invention primarily addresses the problems of subjective bias, inconsistent naming, and low review efficiency caused by the reliance on human experience in traditional function point assessment. It provides a software function point identification method that integrates large models and multiple clustering analysis.
[0005] The above-mentioned technical problem of the present invention is mainly solved by the following technical solution: a software function point identification method integrating large model and multiple clustering analysis, comprising the following steps: Input the design scheme and construct a hierarchical semantic tree for the document; Obtain feature information describing the corresponding function points in the semantic tree, and analyze the feature information to determine candidate function points; Candidate functional points are fused based on semantic tree hierarchy alignment; The candidate function points are differentiated by removing duplicates based on their similarity frequency to obtain the function points.
[0006] This invention, based on the construction and parsing of document-level semantic trees, combines feature location with the reasoning capabilities of large models to achieve accurate extraction and verification of functional points. Furthermore, it employs multiple clustering to create differentiation, and constructs a co-relationship matrix through cluster cross-validation, significantly improving the accuracy of functional point deduplication.
[0007] As a preferred embodiment, the construction of the document hierarchical semantic tree includes: Using the smallest chapter of the design scheme as the unit, recursively construct the document hierarchy semantic tree; Leaf nodes store feature information of specific paragraphs in the corresponding chapter, while non-leaf nodes store a summary of their subordinate feature information.
[0008] The software engineering design scheme includes multiple nested headings. By identifying the headings of the design scheme, the smallest section is identified. Using the smallest section as the basic unit, a recursive document parsing algorithm is used to construct a hierarchical semantic tree of the document through multi-level heading matching rules. The leaf nodes store feature information, i.e., specific paragraph information, while the non-leaf nodes store a summary of the subordinate feature information.
[0009] As a preferred embodiment, the method of determining candidate function points through feature information analysis includes: Traverse the leaf nodes of the document hierarchical semantic tree and obtain the feature information stored in the leaf nodes; Candidate function points corresponding to the function description are extracted based on feature information.
[0010] Leaf nodes store feature information for specific paragraphs within the corresponding chapters. By traversing the leaf nodes, feature information is retrieved, and function points are extracted based on this information to identify implicit function points. At this stage, the identified function points are not yet the final determined function points and are successively used as candidate function points.
[0011] As a preferred approach, feature information is input into a pre-defined function point recognition model, and the output is a triple representing the candidate function point. The triple includes the function point name, function point description, and function point classification.
[0012] This solution uses large models to identify functional points, such as mainstream large models of 32B and above. Taking the Qwen / QwQ-32B model as an example, the system accesses the large model by accessing the online API interface and configuring the API_KEY (model key), API_URL (interface address), and MODEL (model name) to complete the preset model settings. The model is then deployed locally, configuring the BASE_URL (interface address: local) and MODEL (model name) to complete the preset model configuration. The acquired feature information is input into the pre-set model, and candidate functional points are output through model prompts and model parameter adjustments. Specifically, 1. The output content is standardized using model prompts. This includes referencing the NESMA function point specification in GB-T 42588-2023; standardizing output content, format, and order; and setting more precise requirements for function point names based on design experience, such as: function point names must end with "information," function point names cannot be "Dongci," and logs / statistics / analysis are not considered function points; adding restrictive standards to function point descriptions, such as: a minimum of 4 fields and a minimum length of 100 characters; and adding enumerated values for function point categories, which are required by the NESMA specification, to improve accuracy. 2. Improving output accuracy through model parameter adjustments. Output function points are represented by triples, where each triple includes the function point name, function point description, and function point category. Function point names are standardized using regular expressions. Function point categories include ILF (Internal Logical Files): data or control information maintained within the system boundary and identified from the user's perspective; and EIF (External Interface Files): data maintained by other systems and required by this system. Function point descriptions are descriptions of the function points extracted from feature information.
[0013] As a preferred approach, candidate function points are input into a pre-defined function point naming discrimination model to obtain correctly named candidate function points.
[0014] This solution uses a large model to judge the standardization of function point naming, such as the mainstream large model 32B and above. Candidate function point names are input into a pre-defined function point naming discrimination model. Through model prompts and parameter adjustments, the model outputs the judgment results on the standardization of candidate function point naming, filtering out correctly named candidate function points for subsequent operations.
[0015] As a preferred approach, a budget table title hierarchy is defined, with the title hierarchy mapping to the hierarchical structure of the document hierarchy semantic tree. Each title level in the budget table is named according to the hierarchical information of the corresponding document hierarchy semantic tree in a defined format.
[0016] This solution automatically standardizes the naming of each title level in the budget table based on the hierarchical structure of the document hierarchy semantic tree, ensuring that the names of each level in the budget table correspond to the names of the design schemes. Specifically, it sets the title levels of the budget table, such as system, subsystem, functional module, function, secondary function, etc. The hierarchical structure of the document hierarchy semantic tree maps to the title level structure. Based on the document hierarchy semantic tree, the type of the title name stored in the node can be inferred, thereby standardizing the naming of the budget table to output a unified budget table, facilitating subsequent budgeting for software engineering.
[0017] This solution automatically names each heading level of the budget table based on the document's hierarchical semantic tree information. This naming follows a predefined format and primarily standardizes three naming conventions, including: 1. Sheet name, corresponding to the subsystem, set the format as: 3. Parent node number + subsystem name + custom development table (optional), for example, "3.1 Comprehensive office system" or "3.2 Convenient service management system".
[0018] The custom development table title should be formatted as: Table 3. Parent Node Number + Application System Custom Development Workload Table + - Subsystem Name, for example, "Table 3.1 Application System Custom Development Workload Table - Comprehensive Office System" or "Table 3.2 Application System Custom Development Workload Table - Convenient Service Management System".
[0019] 2. Functional module name: Set as the module name, for example, in the subsystem, the value is represented as "Records Management", "Personnel Management", "Trade Union Management", "Patriotic Health Management".
[0020] As a preferred approach, a node level threshold is set. Traverse the leaf nodes of the document hierarchy semantic tree, and determine whether the leaf node level is greater than the node level threshold. If so, merge the candidate function point corresponding to the node into the node at the level corresponding to the node level threshold. If not, determine the next leaf node.
[0021] This solution integrates the functional points of the leaf nodes under a node with a set node level threshold in the document hierarchy semantic tree, generating a complete set of functional points under the corresponding title level. The node with the set node level threshold in the document hierarchy semantic tree corresponds to a certain level in the title level. For example, in this invention, the node level threshold is set to 3, which corresponds to a functional module in the title level. The functions of the leaf nodes under the 3rd level node are integrated to generate a complete set of functional points under the functional module, which is then output to the specified position in the budget table.
[0022] As a preferred embodiment, the differential processing of candidate function points includes: Vectorize all candidate function points; After vectorization, candidate function points are subjected to multiple clustering, and the similarity information of candidate function point pairs after each clustering is recorded.
[0023] Before deduplicating function point names, they need to be vectorized, converting them into a consistent encoding format to calculate the distance between the encoded components. This invention preferably employs a multiple clustering method, such as multiple K-means clustering, to further improve accuracy. Using different criteria for multiple clusterings results in higher deduplication precision. Multiple clustering is performed on candidate function points multiple times, setting the K value for each clustering. Because the number of cluster centers K varies, the clustering results also differ each time. The similarity information of function point pairs after each clustering is recorded.
[0024] As a preferred embodiment, the method of deduplicating similarity frequencies based on candidate function points includes: Construct a co-correlation matrix based on similarity information of candidate function points; The similarity frequency of each candidate functional point pair is obtained based on the co-cooperation relationship matrix; Sort the candidate function point pairs in descending order of similarity frequency, and then remove duplicates from the candidate function point pairs according to the number of duplicates in the sorted order. If multiple candidate function point pairs have the same similarity frequency, calculate the distance between the candidate function point pairs, sort them in ascending order of distance, and select candidate function point pairs in order of sorting according to the remaining number of deduplications.
[0025] Based on the similarity information of candidate function point pairs after each clustering, a co-correlation matrix is constructed. This matrix includes the similarity frequency of candidate function point pairs, i.e., the number of times each candidate function point pair exhibits similar results after multiple clustering. Candidate function point pairs are then sorted in descending order of similarity frequency; a higher similarity frequency indicates a higher similarity between candidate function point pairs, requiring priority for deduplication. One candidate function point is selected from each pair and removed. The process of deduplicating candidate function point pairs is repeated sequentially based on the calculated number of duplicates, sorted by similarity frequency. When encountering candidate function point pairs with the same similarity frequency, the distance between each pair is calculated. These pairs are then sorted in ascending order by distance, with smaller distances indicating higher similarity. Candidate function point pairs are then selected sequentially based on the remaining number of duplicates, sorted by distance, for further deduplication. After deduplication, the final function points are obtained. The software budget is calculated based on the number of function points, and a budget table is output.
[0026] As a preferred option, investment thresholds, benchmark personnel costs, man-month conversion factor, application technology adjustment factor, scale change factor, and function point time consumption rate are set. Calculate the actual investment generated based on the candidate function points; The number of duplicates is Round((actual generated investment - investment threshold) * personnel conversion factor / (benchmark monthly cost * application area adjustment factor * scale change factor * function point consumption rate), 2).
[0027] This invention employs dynamic deduplication. The number of deduplications is determined based on the number of candidate function points identified through feature information analysis. An investment threshold (actual required investment) and other relevant parameters are set. The actual investment is calculated based on the number of candidate function points and these parameters. Since the actual investment may contain duplicates or similarities, it generally exceeds the investment threshold. The current deduplication count is calculated based on the actual production investment, the investment threshold, and the relevant parameters. Precise deduplication is then performed based on the calculated number of deduplications. Finally, the software budget is calculated based on the number of function points after deduplication, representing the ideal investment amount.
[0028] Therefore, the advantages of this invention are: based on the construction and parsing of a document-level semantic tree, combined with feature location and large-scale model reasoning capabilities, it achieves accurate extraction and review of functional points. Furthermore, it employs multiple clustering to create differentiation, and constructs a co-relationship matrix through cluster cross-validation, significantly improving the accuracy of functional point deduplication. It solves the problems of subjective bias arising from reliance on human experience in functional decomposition, inconsistent naming, and low review efficiency. Attached Figure Description
[0029] Figure 1 This is a schematic diagram of a process structure of the present invention.
[0030] Figure 2 This is a schematic diagram of the document hierarchy semantic tree structure of the example system in this embodiment of the invention. Detailed Implementation
[0031] To further illustrate the technical means and effects of the present invention in achieving its intended purpose, the following detailed description of the specific implementation methods, structures, features, and effects of the present invention, in conjunction with the accompanying drawings and preferred embodiments, is provided below.
[0032] Example 1: This embodiment presents a software function point identification method that integrates large model and multiple clustering analysis, such as... Figure 1 As shown, it includes the following steps: S1. Input the design scheme and construct a hierarchical semantic tree for the document.
[0033] As a preferred embodiment, step S1 specifically includes: Using the smallest chapter of the design scheme as the unit, recursively construct the document hierarchy semantic tree; Leaf nodes store feature information of specific paragraphs in the corresponding chapter, while non-leaf nodes store a summary of their subordinate feature information.
[0034] The software engineering design scheme includes multiple nested headings. By identifying the headings of the design scheme, the smallest section is identified. Using the smallest section as the basic unit, a recursive document parsing algorithm is employed, and a hierarchical semantic tree is constructed through multi-level heading matching rules. Leaf nodes store feature information, i.e., specific paragraph information, while non-leaf nodes store a summary of subordinate feature information. Each node contains parameters, including: heading, content, child nodes, newly added parent node reference, generated function point result, number of child nodes in the heading, and function point review result.
[0035] S2. Obtain the feature information of the corresponding function point description in the semantic tree, and analyze the feature information to determine the candidate function points.
[0036] As a preferred embodiment, step S2 specifically includes: S21. Traverse the leaf nodes of the document hierarchical semantic tree and obtain the feature information stored in the leaf nodes.
[0037] Leaf nodes store feature information of specific paragraphs in the corresponding chapter. Feature information is obtained by traversing the leaf nodes.
[0038] S22. Extract candidate function points corresponding to the function description based on feature information.
[0039] Function points are extracted based on feature information to identify implicit function points. This embodiment uses a large model to identify function points, and the specific process includes: S221. Input the feature information into the pre-defined function point recognition model and output a triple representing the candidate function point. The triple includes the function point name, function point description, and function point classification.
[0040] The large model uses 32B or higher models. Taking the Qwen / QwQ-32B model as an example, the large model is accessed through the system, and the online API interface is accessed. The API_KEY (model key), API_URL (interface address), and MODEL (model name) are configured to complete the preset model settings. The model is then deployed locally, and the BASE_URL (interface address: local) and MODEL (model name) are configured to complete the preset model settings. The acquired feature information is input into the pre-set model, and standardized candidate function point names are constrained by model prompts and model parameter adjustments. Specifically, 1. The output content is standardized using model prompts. This includes referencing the NESMA function point specification in GB-T 42588-2023; standardizing output content, format, and order; and, based on design experience, setting more precise requirements for function point names, such as: function point names must end with "Information," function point names cannot be "Dongci," and logs / statistics / analysis are not considered function points; adding restrictive standards to function point descriptions, such as: a minimum of 4 fields and a minimum length of 100 characters; and adding enumerated values for function point classification, which are required by the NESMA specification, to improve accuracy. 2. Improving output accuracy through model parameter adjustments.
[0041] The output candidate function points are represented as triples, each containing a function point name, description, and category. The function point name is standardized using regular expressions. The function point category includes ILF (Internal Logical Files): data or control information maintained within the system boundary and identified from the user's perspective; and EIF (External Interface Files): data maintained by other systems and required by this system. The function point description is extracted from the feature information. The triples are stored as arrays in the generated function point result parameters of the leaf nodes, awaiting function point review before being written into the budget table.
[0042] After obtaining the candidate function points, each candidate function point undergoes a naming review process, which includes: S222. Input the candidate function points into the pre-set function point naming discrimination model to obtain the correctly named candidate function points.
[0043] This solution employs a large-scale model to assess the naming compliance of functional points, such as mainstream large-scale models 32B and above. Candidate functional point names are input into a pre-defined functional point naming discrimination model. Through model hints and parameter adjustments, the model outputs the results of its naming compliance assessment and establishes a rule engine to eliminate common naming errors, such as those related to verbs, policies, log entries, permissions, registration, approvals, and technical documents. Finally, correctly named candidate functional points are selected for subsequent operations.
[0044] S23. Set the budget table title level, name the title level according to the document hierarchy semantic tree, and merge the candidate function points according to the semantic tree hierarchy alignment.
[0045] This invention also standardizes the naming of each level of headings in the budget table to ensure that the names of each level of the established budget table correspond to the names of the design schemes. The specific process includes: S231. Set the heading levels of the budget table. The heading levels correspond to the hierarchical structure of the document hierarchy semantic tree. Each heading level of the budget table is named according to the hierarchical information of the corresponding document hierarchy semantic tree in the set format.
[0046] This solution automatically standardizes the naming of each title level in the budget table based on the hierarchical structure of the document hierarchy semantic tree, ensuring that the names of each level in the budget table correspond to the names of the design schemes. Specifically, it sets the title levels of the budget table, such as system, subsystem, functional module, function, secondary function, etc. The hierarchical structure of the document hierarchy semantic tree maps to the title level structure. Based on the document hierarchy semantic tree, the type of the title name stored in the node can be inferred, thereby standardizing the naming of the budget table to output a unified budget table, facilitating subsequent budgeting for software engineering.
[0047] This solution automatically names each heading level of the budget table based on the document's hierarchical semantic tree information. This naming follows a predefined format and primarily standardizes three naming conventions, including: 1. Sheet name, corresponding to the second-level node, set the format as: 3. Parent node number + second-level node name + custom development table (optional).
[0048] The custom development table title should be formatted as: Table 3. Parent Node Number + Application System Custom Development Workload Table + - Second-Level Node Name.
[0049] 2. Functional module name, corresponding to the third-level node, is set as the module name. The third-level node name follows a one-to-one correspondence principle, completely preserving the original text, and directly associates the document hierarchy semantic tree level with the budget table title level name by establishing pointer relationships.
[0050] After standardizing the naming of heading levels, it is also necessary to align the hierarchical semantic tree of the document and input it into the corresponding positions in the budget table. The specific process includes: S232. Set node level thresholds. Establish a one-to-one mapping between the first node of the document hierarchical semantic tree and the nodes at the node level thresholds, respectively, and the heading levels from the first level of the budget table title to the heading levels at the node level thresholds. After standardizing the naming of the nodes from the first node to the node level thresholds, output them to the corresponding heading level positions in the budget table.
[0051] Traverse the leaf nodes of the document hierarchy semantic tree, and determine whether the leaf node level is greater than the node level threshold. If so, merge the candidate function point corresponding to the node into the node at the level corresponding to the node level threshold. If not, determine the next leaf node.
[0052] This solution integrates the functional points of the leaf nodes under a node with a set node level threshold in the document hierarchy semantic tree, generating a complete set of functional points under the corresponding title level. The node with the set node level threshold in the document hierarchy semantic tree corresponds to a certain level in the title level. For example, in this invention, the node level threshold is set to 3, which corresponds to a functional module in the title level. The functions of the leaf nodes under the 3rd level node are integrated to generate a complete set of functional points under the functional module, which is then output to the specified position in the budget table.
[0053] Based on the candidate functionalities that have been obtained and passed the naming review, combined with the standardization of naming at each level of the budget table, the hierarchical semantic tree of the document hierarchy is automatically aligned, and the hierarchical names of the document hierarchy semantic tree are entered into the corresponding title levels of the budget table to obtain the initial budget table.
[0054] S3. Differentiate candidate function points by removing duplicates based on similarity frequency to obtain the final function points. Specifically, this includes: S31. Vectorize all candidate function points; After vectorization, candidate function points are subjected to multiple clustering, and the similarity information of candidate function point pairs after each clustering is recorded.
[0055] Before deduplicating function point names, they need to be vectorized, converting them into a consistent encoding format to calculate the distance between the encoded components. This invention preferably employs a multiple clustering method, such as multiple K-means clustering, to further improve accuracy. Using different criteria for multiple clusterings results in higher deduplication precision. Multiple clustering is performed on candidate function points multiple times, setting the K value for each clustering. Because the number of cluster centers K varies, the clustering results also differ each time. The similarity information of function point pairs after each clustering is recorded.
[0056] The value of the cluster center K is generally 1.5 to 3 times the number of duplicates. There is no mandatory rule for setting the K value. It is determined by the ratio between the number of duplicates and the number of candidate function points. The range of 1.5 to 3 times is a good range for K-means clustering.
[0057] S32. Construct a co-operation matrix based on the similarity information of candidate function points; The similarity frequency of each candidate functional point pair is obtained based on the co-cooperation relationship matrix; Sort the candidate function point pairs in descending order of similarity frequency, and then remove duplicates from the candidate function point pairs according to the number of duplicates in the sorted order. If multiple candidate function point pairs have the same similarity frequency, calculate the distance between the candidate function point pairs, sort them in ascending order of distance, and select candidate function point pairs in order of sorting according to the remaining number of deduplications.
[0058] Based on the similarity information of candidate function point pairs after each clustering, a co-correlation matrix is constructed. This matrix includes the similarity frequency of candidate function point pairs, i.e., the number of times each candidate function point pair exhibits similar results after multiple clustering. Candidate function point pairs are then sorted in descending order of similarity frequency; a higher similarity frequency indicates a higher similarity between candidate function point pairs, requiring priority for deduplication. One candidate function point is selected from each pair and removed. The process of deduplicating candidate function point pairs is repeated sequentially based on the calculated number of duplicates, sorted by similarity frequency. When encountering candidate function point pairs with the same similarity frequency, the distance between each pair is calculated. These pairs are then sorted in ascending order by distance, with smaller distances indicating higher similarity. Candidate function point pairs are then selected sequentially based on the remaining number of duplicates, sorted by distance, for further deduplication. After deduplication, the final function points are obtained. The software budget is calculated based on the number of function points, and a budget table is output.
[0059] In this embodiment, the number of duplicates is determined based on the number of candidate function points identified through feature information analysis, specifically including: Set investment thresholds, benchmark personnel costs, man-month conversion factor, application technology adjustment factor, scale change factor, and function point time consumption rate; Calculate the actual investment generated based on the candidate function points; The number of duplicates is Round((actual generated investment - investment threshold) * personnel conversion factor / (benchmark monthly cost * application area adjustment factor * scale change factor * function point consumption rate), 2). Round() is the rounding function.
[0060] Set an investment threshold (actual required investment) and other relevant parameters. Calculate the actual generated investment based on the number of candidate function points and these parameters. Since the actual generated investment may be duplicated or similar, it will generally exceed the investment threshold. Calculate the current number of duplicates to be removed based on the actual production investment, the investment threshold, and the relevant parameters. Perform precise deduplication based on the calculated number of duplicates. Calculate the software budget based on the number of function points after deduplication; this software budget represents the ideal investment amount.
[0061] Example 2: This embodiment is explained in detail with reference to illustrative examples.
[0062] Taking the information system construction plan as an example, the information system is as follows: 1. It includes two subsystems: the integrated office system and the boundary service management system.
[0063] 2. Each subsystem contains several modules: the comprehensive office system includes file management, personnel management, trade union management, and patriotic health management; the convenient service management system includes appointment recipients, resource management, resource appointment, and data visualization.
[0064] 3. Each module contains several functions. For example, the file management module includes file entry management and file management; the personnel management module includes XXX and XXX; ...
[0065] 4. A certain function also includes secondary functions, such as file entry management which includes XXX and XXX.
[0066] The following is a partial example of an information system design scheme: -1.1.1 Integrated Office System -1.1.1.1 File Management -1.1.1.1.1 File Entry Management It enables the management of archival information, including information input, modification, deletion, and query; Create a new file: Users can create new files in the system by entering the file name, category, and content; Delete files: Users can easily delete files that are no longer needed, keeping the archive clean and organized; Editing Archives: Users can edit and modify existing archive records, updating information such as the archive's name, category, and content; Detailed information display: When querying and viewing files, the system will display detailed information about the files, including name, category, creation date, modification date, and specific content.
[0067] -1.1.1.1.2 Archive and Document Management Archival files are managed as attachments to archival information, supporting operations such as uploading, downloading, and deleting various types of archival files; files include formats such as PDF, Word, and compressed files; File Upload: Users can upload various types of archive files to the system to ensure centralized management of all important files; -1.1.1.2 Human Resources Management -1.1.1.3 Trade Union Management -1.1.1.4 Patriotic Health Management -1.1.2 Convenient Service Management System -1.1.2.1 Reservation Targets -1.1.2.2 Resource Management -1.1.2.3 Resource Reservation -1.1.2.4 Data Visualization A method for identifying software function points that integrates large-scale models and multiple clustering analysis includes the following steps: S1. Input the design scheme and construct a hierarchical semantic tree for the document. Specifically, this includes: Using the smallest chapter of the design scheme as the unit, recursively construct the document hierarchy semantic tree; Information system construction plan document hierarchical semantic tree construction, such as Figure 2 As shown, leaf nodes store the feature information of specific paragraphs in the corresponding chapter (such as the specific content under the chapters of file entry management and file management, which is stored in the content parameters), while non-leaf nodes store a summary of the feature information of their subordinates.
[0068] S2. Obtain the feature information of the corresponding function point description in the semantic tree, and analyze the feature information to determine the candidate function points.
[0069] S21. Traverse the leaf nodes of the document hierarchical semantic tree and obtain the feature information stored in the leaf nodes.
[0070] For example, if the file entry management node is a leaf node, retrieve the content stored in the file entry management node.
[0071] S22. Extract candidate function points corresponding to the function description based on feature information.
[0072] S221. Input the feature information into the pre-defined function point recognition model and output a triple representing the candidate function point. The triple includes the function point name, function point description, and function point classification.
[0073] The output function point triples are shown in the table below: Function point name Function point description Function point classification Archive Information File name, file category, creation date, modification date, file content, and electronic file location. ILF Archive classification information Category ID, Category Name, Category Description, Parent Category, Creation Time ILF S222. Input the candidate function points into the pre-set function point naming discrimination model to obtain the correctly named candidate function points.
[0074] In this case, "Archived Information" and "Archived Classification Information" are candidate function points for the leaf node "Archived Entry Management." The names of "Archived Information" and "Archived Classification Information" are then judged. In this example, both "Archived Information" and "Archived Classification Information" are judged as "Correct." The judgment results are stored as an array in the function point generation result parameters of the leaf node.
[0075] S23. Set the budget table title level, name the title level according to the document hierarchy semantic tree, and merge the candidate function points according to the semantic tree hierarchy alignment.
[0076] S231. Set the heading levels of the budget table. The heading levels correspond to the hierarchical structure of the document hierarchy semantic tree. Each heading level of the budget table is named according to the hierarchical information of the corresponding document hierarchy semantic tree in the set format.
[0077] This solution automatically names each heading level of the budget table based on the document's hierarchical semantic tree information. This naming follows a predefined format and primarily standardizes three naming conventions, including: 1. Sheet name, corresponding to the second-level node, set the format as: 3. Parent node number + second-level node name + custom development table (optional), such as "3.1 Comprehensive office building" and "3.2 Convenient service management system" in this case.
[0078] The title of the customized development table should be formatted as: Table 3. Parent Node Number + Application System Custom Development Workload Table + - Second-Level Node Name, such as "Table 3.1 Application System Custom Development Workload Table - Comprehensive Office System" in this case.
[0079] 2. Functional module name, corresponding to the third-level node, is set as the module name, such as "Archives Management", "Personnel Management", "Trade Union Management" and "Patriotic Health Management" in this case.
[0080] S232. Set node level thresholds. Establish a one-to-one mapping between the first node of the document hierarchical semantic tree and the nodes at the node level thresholds, respectively, and the heading levels from the first level of the budget table title to the heading levels at the node level thresholds. After standardizing the naming of the nodes from the first node to the node level thresholds, output them to the corresponding heading level positions in the budget table.
[0081] In this case, the node level threshold is set to 3, corresponding to the functional modules in the title level. The functions of the leaf nodes under the 3rd level node are merged to generate a complete set of functional points under the functional module, which is then output to the specified location in the budget table.
[0082] For example, the "Records Management" module includes two functional modules: "Records Entry Management" and "Records Document Management." "Records Entry Management" can extract two functional points: "Records Information" and "Records Document Information"; "Records Document Information" can extract two functional points: "Archived Information" and "Records Information." According to the settings, only the third level of the "Records Management" module needs to be identified; regardless of how many functions, layers, or functional points it contains, they all belong to the "Records Management" module.
[0083] S3. Perform differentiation processing on candidate function points, and remove duplicates based on the similarity frequency of candidate function points to obtain function points.
[0084] S31. Vectorize all candidate function points; After vectorization, candidate function points are subjected to multiple clustering, and the similarity information of candidate function point pairs after each clustering is recorded.
[0085] Multiple K-means clustering is employed. For example, given six function points (fp1, fp2, fp3, fp4, fp5, and fp6), three clustering operations are performed with K=4, K=3, and K=2 respectively. The number of cluster centers (K) varies, resulting in different clustering results for each operation. The similarity information of function point pairs after each clustering is recorded.
[0086] S32. Construct a co-operation matrix based on the similarity information of candidate function points; The similarity frequency of each candidate functional point pair is obtained based on the co-cooperation relationship matrix; Sort the candidate function point pairs in descending order of similarity frequency, and then remove duplicates from the candidate function point pairs according to the number of duplicates in the sorted order. If multiple candidate function point pairs have the same similarity frequency, calculate the distance between the candidate function point pairs, sort them in ascending order of distance, and select candidate function point pairs in order of sorting according to the remaining number of deduplications.
[0087] The co-clustering matrix counts the frequency with which two candidate nodes are classified as having high similarity (belonging to the same cluster) across multiple clustering operations. A higher frequency indicates a greater likelihood of similarity. The co-clustering matrix constructed after multiple clustering is shown below: fp1 fp2 fp3 fp4 fp5 fp6 fp1 2 1 1 0 0 fp2 0 0 1 1 fp3 2 0 0 fp4 0 0 fp5 3 fp6 The corresponding co-correlation matrix shows that fp5 and fp6 have the highest similarity, followed by fp1 and fp2, and then fp3 and fp4.
[0088] The corresponding co-correlation matrix shows that fp5 and fp6 have the highest similarity, followed by fp1 and fp2, and then fp3 and fp4.
[0089] If the number of duplicates is 1, then remove either fp5 or fp6.
[0090] If the number of duplicates to be removed is 2, then it is also necessary to calculate the distance between fp1 and fp2, and between fp3 and fp4, and remove one of the groups with higher similarity.
[0091] Similarly, if the number of duplicates is 3, 4, etc., then the deduplication process is performed using the same method.
[0092] Obtain the deduplicated feature points, calculate the software budget based on the number of feature points, and obtain the accurate investment amount. Update the original budget sheet according to the deduplication results, and output the final budget sheet.
[0093] The specific embodiments described herein are merely illustrative of the spirit of the invention. Those skilled in the art to which this invention pertains may make various modifications or additions to the described specific embodiments or use similar methods to substitute them, without departing from the spirit of the invention or exceeding the scope defined by the appended claims.
Claims
1. A method for identifying software function points that integrates large-scale models and multiple clustering analysis, characterized in that, Includes the following steps: Input the design scheme and construct a hierarchical semantic tree for the document; Obtain feature information describing the corresponding function points in the semantic tree, and analyze the feature information to determine candidate function points; Candidate functional points are fused based on semantic tree hierarchy alignment; The candidate function points are differentiated by removing duplicates based on their similarity frequency to obtain the function points.
2. The software function point identification method integrating large model and multiple clustering analysis according to claim 1, characterized in that, The construction of the document hierarchical semantic tree includes: Using the smallest chapter of the design scheme as the unit, recursively construct the document hierarchy semantic tree; Leaf nodes store feature information of specific paragraphs in the corresponding chapter, while non-leaf nodes store a summary of their subordinate feature information.
3. The software function point identification method integrating large model and multiple clustering analysis according to claim 2, characterized in that, The method of analyzing feature information to determine candidate function points includes: Traverse the leaf nodes of the document hierarchical semantic tree and obtain the feature information stored in the leaf nodes; Candidate function points corresponding to the function description are extracted based on feature information.
4. The software function point identification method integrating large model and multiple clustering analysis according to claim 3, characterized in that: Input the feature information into the pre-defined function point recognition model and output a triple representing the candidate function point. The triple includes the function point name, function point description, and function point classification.
5. The software function point identification method integrating large model and multiple clustering analysis according to claim 4, characterized in that: Input the candidate function points into the pre-defined function point naming discrimination model to obtain the correctly named candidate function points.
6. A software function point identification method integrating large model and multiple clustering analysis according to any one of claims 1-5, characterized in that: Set the heading levels of the budget table, and map the heading levels to the hierarchical structure of the document hierarchy semantic tree. Each heading level of the budget table is named according to the hierarchical information of the corresponding document hierarchy semantic tree in a set format.
7. A software function point identification method integrating large model and multiple clustering analysis according to any one of claims 1-5, characterized in that: Set node level threshold Traverse the leaf nodes of the document hierarchy semantic tree, and determine whether the leaf node level is greater than the node level threshold. If so, merge the candidate function point corresponding to the node into the node at the level corresponding to the node level threshold. If not, determine the next leaf node.
8. A software function point identification method integrating large model and multiple clustering analysis according to any one of claims 7, characterized in that, The aforementioned differential processing of candidate function points includes: Vectorize all candidate function points; After vectorization, candidate function points are subjected to multiple clustering, and the similarity information of candidate function point pairs after each clustering is recorded.
9. The software function point identification method integrating large model and multiple clustering analysis according to claim 8, characterized in that, The method of deduplicating similarity frequencies based on candidate function points includes: Construct a co-correlation matrix based on similarity information of candidate function points; The similarity frequency of each candidate functional point pair is obtained based on the co-cooperation relationship matrix; Sort the candidate function point pairs in descending order of similarity frequency, and then remove duplicates from the candidate function point pairs according to the number of duplicates in the sorted order. If multiple candidate function point pairs have the same similarity frequency, calculate the distance between the candidate function point pairs, sort them in ascending order of distance, and select candidate function point pairs in order of sorting according to the remaining number of deduplications.
10. The software function point identification method integrating large model and multiple clustering analysis according to claim 9, characterized in that: Set investment thresholds, benchmark personnel costs, man-month conversion factor, application technology adjustment factor, scale change factor, and function point time consumption rate; Calculate the actual investment generated based on the candidate function points; The number of duplicates is Round((actual generated investment - investment threshold) * personnel conversion factor / (benchmark monthly cost * application area adjustment factor * scale change factor * function point consumption rate), 2).
Citation Information
Patent Citations
A structured extraction method and system for transaction-related functional points in software requirements documents
CN112817561B