Software evaluation method, apparatus, device, and storage medium

By automating the processing of software requirements documents through multimodal fusion analysis technology, the problems of low efficiency and poor consistency in existing software evaluation methods are solved. It achieves a complete and reliable automated conversion from requirements documents to FPA forms, thereby improving the accuracy and reliability of the evaluation.

CN122152659APending Publication Date: 2026-06-05CHINA MOBILE GROUP DESIGN INST +1

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
CHINA MOBILE GROUP DESIGN INST
Filing Date
2026-02-02
Publication Date
2026-06-05

AI Technical Summary

Technical Problem

Existing software evaluation methods rely on manual NESMA evaluation or natural language processing, resulting in low evaluation efficiency, poor result consistency, inability to fully automate the conversion of requirements documents to FPA forms, and susceptibility to data sensitivity interference affecting accuracy and reliability.

Method used

By employing multimodal fusion analysis technology, which combines text semantic understanding and image feature recognition, functional items are automatically extracted from software requirements documents, classified and formally checked, and functional point analysis tables and evaluation reports are generated.

Benefits of technology

It achieves fully automated evaluation from requirements documents to FPA forms, improving evaluation efficiency and result consistency, overcoming the shortcomings of traditional methods in terms of accuracy and reliability, and ensuring the comprehensiveness and accuracy of the evaluation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122152659A_ABST
    Figure CN122152659A_ABST
Patent Text Reader

Abstract

The application discloses a kind of software evaluation method, device, equipment and storage medium, and specifically discloses: receiving the software requirement document uploaded by user, and the software requirement document is parsed, and target analysis data is extracted;Target analysis data includes function item description, data element type and file reference type;Based on function item description and interface image associated with function item description, a multi-modal fusion analysis technique is used to classify the function items, resulting in a classification result;The function items are checked for duplicates, resulting in a first inspection result, and the data element types and file reference types are checked for form, resulting in a second inspection result;Form checking includes illegal character checking and character duplication checking;According to the classification result, the first inspection result and the second inspection result, a function point analysis table is generated, and a software evaluation report is generated based on the function point analysis table.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of software management technology, and in particular to a software evaluation method, apparatus, device, and storage medium. Background Technology

[0002] Currently, software evaluation typically employs either manual NESMA (Netherlands Software Measurement Association) assessment or natural language processing methods. Manual NESMA assessment primarily involves experts manually analyzing requirements documents, extracting functional items and related data elements layer by layer, and classifying functional types based on experience, then manually filling out a functional point analysis table to complete the evaluation. Natural language processing methods utilize deep learning techniques such as bidirectional LSTM (Long Short-Term Memory) and CRF (Conditional Random Field) models, or sequence labeling and named entity recognition, to automatically identify functional point types from requirements documents. However, these methods only support partial evaluation processes and cannot achieve full automation.

[0003] While both methods can achieve basic software evaluation, the manual NESMA evaluation method relies heavily on manual operation, which is cumbersome and time-consuming, resulting in low evaluation efficiency. Furthermore, due to differences in subjective experience, the evaluation results are inconsistent. On the other hand, although the natural language processing method improves the degree of automation, its model is limited to function type recognition and cannot fully handle the conversion of requirements documents to FPA (Function Point Analysis) tables. Moreover, it is prone to errors due to insufficient data sensitivity, affecting the accuracy and reliability of the evaluation. Summary of the Invention

[0004] The main objective of this invention is to provide a software evaluation method, apparatus, device, and storage medium, which aims to solve the problems of low evaluation efficiency, poor result consistency, inability to fully automate the conversion of requirements documents to FPA forms, and susceptibility to data sensitivity interference that lead to existing software evaluation methods relying on manual NESMA evaluation or natural language processing technology.

[0005] In a first aspect, embodiments of the present invention provide a software evaluation method, comprising: The system receives software requirements documents uploaded by users, parses the software requirements documents, and extracts target analysis data. The target analysis data includes functional item descriptions, data element types, and file reference types. The functional item descriptions are the descriptive text of the functional items defined in the software requirements document. Based on the function item descriptions and the associated interface images, multimodal fusion analysis technology is used to classify the function items and obtain classification results; the multimodal fusion analysis technology includes text semantic understanding and image feature recognition. The function items are subjected to function item deduplication to obtain a first check result; and the data element type and the file reference type are subjected to formal checks to obtain a second check result; the formal checks include illegal character checks and character duplication checks. Based on the classification results, the first inspection results, and the second inspection results, a function point analysis table is generated, and a software evaluation report is generated based on the function point analysis table.

[0006] Secondly, embodiments of the present invention provide a software evaluation apparatus, comprising: The parsing module is used to receive software requirement documents uploaded by users, parse the software requirement documents, and extract target analysis data; the target analysis data includes at least one of functional item descriptions, data element types, and file reference types; wherein, the functional item descriptions are descriptive texts of functional items defined in the software requirement documents; The classification module is used to classify the functional items based on the description of the functional items and the interface images associated with the description of the functional items, using multimodal fusion analysis technology to obtain classification results; the multimodal fusion analysis technology includes text semantic understanding and image feature recognition; The inspection module is used to perform formal checks on the function items, the data element types, and the file reference types to obtain formal check results; the formal checks include function item deduplication, illegal character checks, and character duplication checks; The generation module is used to generate a function point analysis table based on the classification results and the form check results, and to generate a software evaluation report based on the function point analysis table.

[0007] Thirdly, embodiments of the present invention provide an electronic device, including: a processor; and a memory configured to store computer-executable instructions, which, when executed, cause the processor to perform the steps of the method described in the first aspect above.

[0008] Fourthly, embodiments of the present invention provide a computer-readable storage medium for storing computer-executable instructions that, when executed by a processor, implement the steps of the method described in the first aspect above.

[0009] Fifthly, embodiments of the present invention provide a computer program product, the computer program product including a computer program, which, when executed by a processor, implements the steps of the method described in the first aspect above.

[0010] The at least one technical solution provided by the embodiments of the present invention can achieve the following technical effects: In this embodiment of the invention, the software requirements document uploaded by the user is first received and parsed, and target analysis data containing function item descriptions, data element types, and file reference types is automatically extracted. Then, based on the function item descriptions and their associated interface images, multimodal analysis technology that integrates text semantics and image features is used to automatically classify the function items, obtaining classification results. On this basis, similarity checks and duplicate checks for function items, as well as checks for illegal and duplicate characters in data elements and file reference types, are performed simultaneously, obtaining check results. After obtaining the above classification results and check results, the classification results and check results are combined to automatically generate a function point analysis table, and a software evaluation report is generated based on the function point analysis table.

[0011] This invention addresses the inefficiencies and inconsistent results of existing methods due to reliance on manual operation by constructing a fully automated evaluation chain, from automatic parsing of requirement documents and multimodal fusion classification to deduplication and formal checks. By introducing multimodal fusion analysis combining text and images, this invention achieves more accurate and comprehensive type identification of functional items, overcoming the technical shortcomings of traditional natural language processing methods, such as low evaluation accuracy and poor reliability due to insufficient data sensitivity and model limitations. Finally, by automatically generating FPA forms and evaluation reports, it completely solves the fundamental problem that existing technologies cannot fully and reliably automate the conversion from requirement documents to FPA forms. Attached Figure Description

[0012] Figure 1 One of the flowcharts of a software evaluation method provided in an embodiment of the present invention; Figure 2 A second schematic flowchart of a software evaluation method provided in one embodiment of the present invention; Figure 3 One of the scenario diagrams for a software evaluation method provided in an embodiment of the present invention; Figure 4 A second schematic diagram of a scenario for a software evaluation method provided in an embodiment of the present invention; Figure 5 A third scenario illustration of a software evaluation method provided in an embodiment of the present invention; Figure 6 A third schematic flowchart of a software evaluation method provided in an embodiment of the present invention; Figure 7 A fourth scenario illustration of a software evaluation method provided in an embodiment of the present invention; Figure 8 Fifth scenario illustration of a software evaluation method provided in an embodiment of the present invention; Figure 9 A fourth schematic flowchart of a software evaluation method provided in one embodiment of the present invention; Figure 10 A schematic diagram of the module composition of a software evaluation apparatus 1000 provided in one embodiment of the present invention; Figure 11 This is a schematic diagram of the hardware structure of an electronic device provided in one embodiment of the present invention. Detailed Implementation

[0013] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this invention will be clearly and completely described below in conjunction with specific embodiments and corresponding drawings. Obviously, the described embodiments are only a part of the embodiments of this invention, and not all of them. Based on the embodiments of this invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this invention.

[0014] The technical solutions provided by the various embodiments of the present invention will be described in detail below with reference to the accompanying drawings.

[0015] Please see Figure 1 , Figure 1 This is a flowchart illustrating a software evaluation method provided in one embodiment of the present invention, as shown below. Figure 1 As shown, the method includes the following steps: Step 102: Receive the software requirements document uploaded by the user, parse the software requirements document, and extract the target analysis data; the target analysis data includes functional item descriptions, data element types, and file reference types; among them, the functional item descriptions are the descriptive text of the functional items defined in the software requirements document.

[0016] Step 104: Based on the function item description and the interface image associated with the function item description, the function items are classified using multimodal fusion analysis technology to obtain the classification results; the multimodal fusion analysis technology includes text semantic understanding and image feature recognition.

[0017] Step 106: Perform function item deduplication on the function items to obtain the first check result, and perform formal checks on the data element types and file reference types to obtain the second check result; the formal checks include illegal character checks and character duplication checks.

[0018] Step 108: Based on the classification results, the first inspection results, and the second inspection results, generate a function point analysis table, and based on the function point analysis table, generate a software evaluation report.

[0019] In one embodiment of the present invention, a software requirements document uploaded by a user can be received, parsed, and target analysis data can be extracted. The target analysis data may include functional item descriptions, data element types, and file reference types. The functional item descriptions may be descriptive text of the functional items defined in the software requirements document.

[0020] In this embodiment of the invention, users can upload software requirements documents through a graphical interface. The software requirements documents are typically in .doc or .docx format. After receiving the uploaded software requirements document, a preliminary format verification can be performed to ensure that the document contains necessary structural elements, such as basic components like titles, table of contents, and chapter numbers, as well as key fields such as the "Functional Requirements" section and "Functional Description." If the format verification fails, error messages can be displayed through the interface, such as "Document format not supported, please upload a .doc or .docx file" or "The 'Functional Description' section is missing, please supplement and re-upload," along with help links to guide the user in making corrections.

[0021] Once the document passes verification, a success upload message is displayed, and the document automatically enters the parsing phase. The parsing process uses the python-docx library to read the "Functional Requirements" section of the Word document, extracting headings and paragraph content layer by layer. Specifically, it can identify Heading 1, Heading 2, and Heading 3 levels, corresponding to first-level, second-level, and third-level functional items, respectively, thus extracting functional item descriptions in a structured manner. Simultaneously, it can detect specific markers in the document, such as "[Input]" and "[Output]", extracting the next paragraph as a candidate for DET (Data Element Type), and performing deduplication and merging based on commas; similarly, it detects the "[Data files involved in this function]" marker, extracting the content between parentheses as FTR (File Types Referenced), ignoring "None" and numeric entries. This extracted information can be organized into structured data and stored in a temporary database to support subsequent processing.

[0022] After extraction, this embodiment of the invention can use the openpyxl library to generate an initial table. The table header can include ["Serial Number", "Primary Category", "Secondary Category", "Third Category", "Fourth Category", "Details of Input DETs without Deduplication", "Details of Input DETs", "Number of Input DETs", "Details of Output DETs without Deduplication", "Details of Output DETs", "Number of Output DETs", "Details of Merged DETs", "Number of Merged DETs", "Details of FTRs", "Number of FTRs", "Type", "Complexity", "Number of Function Points"]. The extracted data is then filled into the table to initially display the detailed information of the function items. This process automates the traditional manual parsing of requirement documents, significantly improving efficiency, reducing human error, and ensuring the accuracy of data extraction. For example, in a requirement document, a primary function item could be "User Management Module", a secondary function item could be "Login Function", and a tertiary function item could be "Username Verification". This embodiment of the invention can identify and extract these descriptions layer by layer, and simultaneously accurately capture the associated DETs and FTRs, laying the foundation for subsequent analysis.

[0023] In one example, such as Figure 2 As shown, the process of generating the initial table can be as follows: First, receive the uploaded software requirements document, such as the requirements rule specification, and verify the format and basic structure of the software requirements document. Then, extract functional item information, such as functional items, DET details, FTR details, etc. After extracting the functional item information, generate the initial table based on the extracted information and print the functional item information.

[0024] In this embodiment of the invention, functional items can include first-level functional items, second-level functional items, and third-level functional items. First-level functional items correspond to the highest-level chapter headings in the software requirements document, such as Heading1, representing the main functional modules. Second-level functional items correspond to sub-chapter headings under the highest-level chapter headings, such as Heading2, detailing the sub-parts of the functional modules. Third-level functional items correspond to the lowest-level chapter headings under the sub-chapter headings, such as Heading3, representing specific lowest-level functional items. This hierarchical extraction method ensures the integrity of the functional item hierarchy, facilitating subsequent detailed analysis. This embodiment of the invention automatically identifies and classifies these functional items by parsing the document's heading hierarchy, thereby accurately capturing the functional architecture of the requirements document. For example, in the requirements document, a first-level functional item might be "order processing," a second-level functional item might be "create order," and a third-level functional item might be "input product information." This embodiment of the invention can extract and associate these descriptions layer by layer, ensuring the comprehensiveness and accuracy of the target analysis data. This structured extraction not only improves the efficiency of data organization but also reduces subjective biases that may be introduced by manual grading, making the evaluation process more standardized and reliable.

[0025] In one embodiment of the present invention, based on the extracted function item descriptions and the interface images associated with those descriptions, multimodal fusion analysis technology can be used to classify the function items and obtain classification results. The multimodal fusion analysis technology may include text semantic understanding and image feature recognition.

[0026] In this embodiment of the invention, when performing multimodal fusion analysis, dataset preparation and augmentation can be performed first. During dataset preparation, a dataset containing functional items and their type labels can be constructed. The type labels can be EI (External Input), EQ (External Query), EO (External Output), EIF (External Interface File), or ILF (Internal Logical File). The data can originate from historical project evaluation results. The dataset can be divided into training and validation sets in an 8:2 or 7:3 ratio. The training set can be used for model training, and the validation set can be used to evaluate model performance. The dataset is typically stored in CSV format, with data columns separated by commas, and each row ending with a newline character. Each row can include the functional item, type, detailed description, and path to a screenshot of the system interface. For example, it can be shown in the following table: Table 1

[0027] In this embodiment of the invention, the dataset can be augmented to generate more training data. For text data, augmentation can be performed using synonym replacement. First, the jieba tool can be used for word segmentation and part-of-speech tagging, replacing only words of specific parts of speech such as nouns, verbs, and adjectives. No more than 30% of the words are randomly replaced using a thesaurus to generate new samples. Then, synonyms can be searched using a thesaurus, such as an online Chinese thesaurus, to find a list of candidate synonyms. For each word, multiple synonym options are found. One of these synonyms is randomly selected for replacement, and a replacement ratio is set, for example, no more than 30% of the words in each sentence are replaced to prevent drastic changes in sentence meaning. After replacement, multiple different versions can be generated for each original sentence, and the replaced sentences can be added to the dataset as new training samples. For image data, during data augmentation, screenshots of the system interface can be rotated, scaled, cropped, and flipped to increase diversity without changing the text content, thereby improving the robustness of the model.

[0028] After data augmentation, data preprocessing and feature extraction can be performed. First, the text describing functional items and details can be cleaned by removing punctuation, spaces, special characters, converting it to lowercase, and removing stop words. Then, a pre-trained BERT model is used to convert the text into a vector representation. This is processed through word embedding layers and multi-layer Transformer encoders to obtain BERT's [CLS] tokens. The output of the [CLS] tokens is then used as the feature vector, with a dimension of 768, capturing the deep semantic information of the text. This process ensures the richness and representativeness of the text features, providing high-quality input for subsequent fusion.

[0029] In one example, such as Figure 3 The diagram illustrates a process for generating text feature vectors. The input text can be specially tagged... <cls>and <sep>The data is segmented and fed into a BERT model consisting of 12 stacked encoders (E1 to E12). The model ultimately outputs two sets of feature vector matrices, each with a dimension of 768 (H=768) and rows of N=4 and M=4 respectively. This process transforms natural language text into numerical vectors rich in semantics that can be processed by computers, laying the foundation for subsequent classification or analysis tasks.

[0030] This invention can extract features from detailed descriptions of functional items, following the same preprocessing procedure as for concise functional item descriptions. It can perform noise reduction, word segmentation, and other operations, and uses the BERT model to process the detailed description text. The detailed description text is input into the BERT model and processed through a multi-layer Transformer encoder. The output, labeled with [CLS], serves as the feature vector for the detailed description text. This output vector captures richer semantic information from the detailed description and has the same fixed length, i.e., 768 dimensions.

[0031] This invention also allows for feature extraction from screenshots of interfaces associated with function descriptions. First, the screenshots can be standardized to adjust their size to fit the input requirements of a CNN. Then, a pre-trained CNN model (ResNet) is used to extract features from the processed image. The convolutional and pooling layers of the CNN model can extract high-level visual features from the image; these feature vectors contain visual information such as interface layout and element positions. The output features of the last convolutional layer can be 2048-dimensional and can be used as the image feature vector. The original image size may vary, but deep learning models require a fixed-size input, typically 224x224 pixels. When resizing the image from its original size to the target size, a bilinear interpolation algorithm can be used, with the following formula:

[0032] in, It is the pixel value of a point in the new image; These are the pixel values ​​of four neighboring points in the original image; The interpolation weights, i and j, index neighboring points, are calculated based on distance to ensure a smooth transition during image scaling. Then, a pre-trained CNN model (such as ResNet) is used to extract image features, obtaining high-level visual features through convolutional and pooling layers, outputting a 2048-dimensional feature vector containing interface layout and element position information. This feature extraction method fully leverages the advantages of deep learning, capturing complex patterns in images, such as button arrangements or text regions, thus supplementing the limitations of textual descriptions.

[0033] In one example, such as Figure 4 The diagram illustrates the image feature vector generation process. The input image is first processed using a ResNet model with the final pooling layer removed, resulting in a 224x224 feature map, which is then divided into a 7x7 grid. These features are then subjected to average pooling, compressed, and output as a 2048-dimensional feature vector to extract representative high-dimensional visual features from the original image.

[0034] After feature extraction, embodiments of the present invention can perform feature fusion and multimodal feature representation. The text feature vector, i.e., the feature vector describing the functional items (… ) and detailed description of text feature vectors ( ), and image feature vectors ( The features are concatenated to obtain the combined feature vector. ,in, (768+768+2048) represents the comprehensive feature of all input modalities.

[0035] Then to Standardization is performed using z-score standardization:

[0036] in, It is the mean of the eigenvectors; It is the standard deviation, used to adjust the characteristic distribution so that its mean is 0 and its standard deviation is 1; or minimum-maximum normalization:

[0037] The feature values ​​are scaled to the range [0,1] to ensure consistent scale across different modalities. Next, dynamic weighted fusion is performed using an attention mechanism: the standardized feature vectors are then... Perform a linear transformation to generate the query matrix. Key matrix Sum matrix ,in, , ,and It is a learnable weight matrix, optimized through training. Then, the attention weights can be calculated:

[0038] in, This is the dimension of the key vector, usually set to the square root of the feature dimension, used to scale the dot product and prevent gradient vanishing; the Softmax function ensures the weights sum to 1, highlighting important features. Furthermore, a multi-head attention mechanism is used:

[0039] Each attention head It is the output transformation matrix; It is the number of heads, thereby capturing the relationship and importance between different modalities and achieving effective feature fusion.

[0040] After achieving the above fusion, embodiments of the present invention can perform deep feature fusion using a multi-layer Transformer encoder. The structure of deep feature fusion can be as follows: Figure 5 As shown, the core is a multi-layer Transformer encoder module. Figure 5 The diagram highlights the internal structure of one layer: the bottom layer is a multi-head self-attention layer used to capture dependencies between features; the middle layer consists of two parallel feedforward network layers that perform non-linear transformations on the attention outputs; the top layer is a residual calculation and normalization layer, which operates before and after the attention and feedforward network layers, stabilizing and accelerating the training of the deep network through skip connections and normalization. This deep feature fusion structure can effectively extract and integrate deep semantic information through multiple attention weightings, non-linear transformations, and residual fusion of features.

[0041] In each encoder layer, feature interactions are first computed using a multi-head attention mechanism. Then, the output is added to the input, followed by layer normalization and residual connections. The layer normalization formula is:

[0042] The LayerNorm operation normalizes features and stabilizes the training process; residual connections preserve original information and prevent gradient vanishing. The feedforward neural network processes the data as follows:

[0043] In this process, FFN performs a non-linear transformation and uses activation functions such as ReLU to learn complex relationships. The feature vectors processed by the multi-layer Transformer encoder can then be used as input to a classifier to predict the type of feature item.

[0044] In one example, such as Figure 6 The diagram illustrates a complete multimodal deep learning model architecture. At the bottom of the model are parallel text and image inputs, which are transformed into text feature vectors and image feature vectors respectively through text feature extraction (BERT) and image feature extraction (ResNet) modules. Then, these two modalities' features are merged in a feature vector concatenation layer. The concatenated combined features enter a deep feature fusion layer for advanced semantic fusion. Finally, the fused features are fed into the top Softmax classifier to produce the final classification result. This architecture demonstrates in detail how combining text and image information through feature-level fusion can improve the performance of classification tasks.

[0045] In this embodiment of the invention, after feature fusion is completed, a classifier can be constructed to predict the type of functional item, such as EQ, EO, EI, ILF, and EIF. The classifier is based on a deep fusion feature vector H, uses fully connected layers and the ReLU activation function to learn complex relationships, and the hidden layer output formula is:

[0046] in, This is the output of the current layer; Previous layer output; It is a weight matrix; It is a bias term; in the hidden layer, using the non-linear activation function ReLU can increase the model's non-linear fitting ability.

[0047] The output layer uses the Softmax function to generate a type probability distribution:

[0048] in, The logit value of the i-th category; C is the number of categories, which can be EI, EO, EQ, ILF, or EIF; Softmax ensures that the sum of the output probabilities is 1, and selects the maximum probability value as the feature description. Model training uses the cross-entropy loss function:

[0049] in, It is the one-hot encoding of the actual label; It predicts probabilities, and loss minimization is achieved through backpropagation; the optimizer uses Adam, and the update formula is:

[0050] in, It is the updated value of the parameter at time t; It is a first-order momentum estimate (an exponentially weighted average of the gradient). It is a second-order momentum estimate (an exponentially weighted average of the squared gradient); It is the learning rate; This involves preventing division by zero for decimals. After training, the model is evaluated on the validation set to assess metrics such as precision and recall, and then optimized to improve classification accuracy.

[0051] In one example, such as Figure 7 The diagram illustrates the classifier construction process. From left to right, the layers are the input layer, hidden layer, and output layer. The input layer has 4 nodes, the hidden layer has 5 nodes, and the output layer has 2 nodes. All layers are fully connected. The output layer's values ​​are fed into a Softmax layer, calculated using the following formula:

[0052] The output is transformed into a probability distribution. This probability distribution is compared with the true label, and the loss value is calculated using the cross-entropy loss function, which is:

[0053] After calculating the loss value based on the cross-entropy loss function, the model training and optimization can be guided based on the loss value.

[0054] As described in the above embodiments, the multimodal fusion analysis technique based on functional item descriptions and associated interface images can specifically include: extracting semantic features from the functional item descriptions to obtain text feature vectors, and extracting visual features from the interface images associated with the functional item descriptions to obtain image feature vectors. Then, the text feature vectors and image feature vectors can be concatenated to obtain a combined feature vector, which is then standardized. Through an attention mechanism, the standardized combined feature vectors can be dynamically weighted and fused to generate multimodal fusion features. The attention mechanism can be used to determine the weights of the combined feature vectors based on the importance of the text and image feature vectors constituting them. After determining the weights, a classifier can be used to predict the type of the functional item based on the multimodal fusion features. This process fully utilizes the complementary information of text and images, improves the accuracy and robustness of classification through deep learning models, and solves the problem of insufficient information from a single modality. For example, for the function "Export Report," the text description might emphasize data output, while the screenshot shows the layout of the download button. Multimodal fusion can more accurately determine whether it is an EO type, avoiding misclassification that may occur when relying solely on text in traditional methods. This invention combines natural language processing with computer vision, enabling the model to adapt to variations of documents with different needs through end-to-end training, thus improving generalization ability.

[0055] In one example, such as Figure 8 As shown, the entire multimodal processing flow can be illustrated in detail using a flowchart. First, dataset construction, data preparation, and augmentation are performed, with separate augmentations for text and image datasets. The augmented data then enters the data preprocessing and feature extraction stage, involving feature extraction from functional descriptions, detailed functional descriptions, and system interface screenshots. After feature concatenation, the extracted features undergo feature standardization, attention mechanism fusion, layer normalization, and residual connection steps to achieve feature fusion and multimodal feature representation. Next, the flow enters the deep feature fusion stage of a multi-layer Transformer encoder, including operations such as the application of feedforward neural networks. Finally, by constructing a fully connected classification layer and an output layer, and through model training and optimization, the entire system is completed.

[0056] In one embodiment of the present invention, after obtaining the classification results, functional items can be checked for duplicates to obtain a first check result, and data element types and file reference types can be checked for formal characteristics to obtain a second check result. The formal checks may include illegal character checks and character duplication checks.

[0057] In one embodiment of the present invention, during the deduplication of functional items, each functional item can first undergo data cleaning, including removing redundant spaces, standardizing symbol formats (such as using Chinese punctuation uniformly), and standardizing capitalization (such as converting English to lowercase) to ensure string consistency. After cleaning, the functional items can be stored in a dictionary, with the key being the functional item content and the value being the number of occurrences and cell position. When traversing the dictionary, the number of occurrences is checked; if it exceeds one occurrence, it is marked as a completely duplicate item, and the cells of functional items appearing for the second and subsequent times are marked in dark red to indicate a serious problem. For similar functional items, the Levenshtein Distance algorithm is used to calculate the edit distance.

[0058] In one example, such as Figure 9 The diagram illustrates the process of handling similar functional items. After the process begins, functional item data is cleaned and stored in a dictionary. For each current functional item, a sub-dictionary is constructed comparing it to all the functional items above it, and the edit distance is calculated, then converted into a similarity score. Next, the core judgment is made: is the similarity score > 0.6? If the result is no, it is not a similar item and no processing is done; if it is, it is further determined whether they are in the same module. If they are not in the same module, they are similar items but no processing is done; if they are in the same module, it is also necessary to check whether the DET and FTR details are completely identical. If they are completely identical, the second similar item is marked in dark red; if they are not completely identical, the second similar item is marked in light red. Figure 9 The flowchart shown clearly demonstrates the decision-making process for deduplication of functional items.

[0059] In this embodiment of the invention, the Levenshtein function can be defined as follows:

[0060] Here, 'a' and 'b' are two strings to be compared, with a cost of 0 (same characters) or 1 (different characters). The function can recursively calculate the minimum number of editing operations, which can include insertion, deletion, and replacement. The function can calculate the edit distance between the current function and each previous function, converting it into a similarity score: 1 - edit distance / maximum string length. A similarity threshold is set, such as 0.6; functions with similarity scores higher than the threshold are marked as similar. Then, it can further check whether similar items belong to the same module. If they belong to the same module and their data element type and file reference type are exactly the same (ignoring field order), the second similar item cell is marked in dark red; if the data element type and file reference type are not exactly the same, they are marked in light red. This process automatically identifies duplicates and similar items, avoiding duplicate counting of function points and improving the fairness of the evaluation.

[0061] Simultaneously, this method performs formal checks on data element types and file reference types. For illegal character checks, each cell is scanned to detect illegal symbols such as commas (", "" or "") (but symbols within parentheses "()" are ignored). If found, they are replaced with commas, and the cell is highlighted to alert the user. For duplicate field checks, fields in data element types and file reference types are checked for duplicates. By comparing field content, duplicates are removed and highlighted. Additionally, the method can detect the word "estimate," automatically highlighting it to prompt the user for confirmation. These checks generate detailed reports, recording all formatting issues to help users revise documents and ensure data standardization and consistency. Formal checks not only reduce the workload of manual review but also improve the reliability of results, avoiding evaluation bias caused by incorrect symbols or duplicate fields.

[0062] As described above, in this embodiment of the invention, function item deduplication can include data cleaning of the function items. Data cleaning can include removing redundant spaces, standardizing symbol formats, and unifying capitalization. After data cleaning, the edit distance between function items can be determined, and a similarity score can be calculated based on the edit distance. Similar function items are then identified based on the similarity score and a preset similarity threshold. If the identified similar function items belong to the same module and have the same data element type and file reference type, they are identified as duplicate function items. This embodiment of the invention can automate the process through algorithms, reducing human subjectivity and improving the accuracy and efficiency of deduplication. For example, for the function items "Query Order" and "Order Query," the edit distance is small, and the similarity is high. If they belong to the same module and have the same data element type / file reference type, they are marked as duplicates, thereby preventing function points from being calculated repeatedly and ensuring the uniqueness of the evaluation results.

[0063] In one embodiment of the present invention, a function point analysis table can be generated based on the classification results, the first inspection results, and the second inspection results, and a software evaluation report can be generated based on the function point analysis table.

[0064] In this embodiment of the invention, a Function Point Analysis (FPA) table can be generated based on the previously extracted data and classification results. After extracting information such as function item descriptions, data element types, and file reference types from the requirements document, and obtaining function item descriptions through multimodal fusion classification, the complexity and number of function points for each function item can be automatically calculated based on the number of data element types and the number of file reference types, according to the NESMA standard. For example, the complexity can be determined based on the numerical range of the number of data element types and the number of file reference types, such as low, medium, and high complexity, and the number of function points can be calculated using a predefined formula, such as based on a complexity weight table. Then, this embodiment of the invention can fill the corresponding cells of the FPA table with the function item descriptions, types, complexity, details of data element types, details of file reference types, and the number of function points to generate a structured table. After the table is generated, this embodiment of the invention can provide a user interface, allowing users to manually adjust the function item descriptions, data element types, or file reference types; when the user makes adjustments, this embodiment of the invention can recalculate the number of function points in real time and update the table data to ensure the accuracy of the evaluation results. This interactive design enhances flexibility, allowing users to fine-tune it according to their actual needs while maintaining automation, thus improving usability and user satisfaction.

[0065] Based on the FPA table, this embodiment of the invention can generate software evaluation reports. Report generation can utilize predefined templates, dynamically populating content using the Jinja2 template engine. Templates can include fixed sections (such as report declaration and evaluation methods) and dynamic placeholders (such as {{project_name}} and {{evaluation_results}}). This embodiment extracts data from the FPA table, such as project name, detailed results of feature items, and total number of feature points, and populates the placeholders. After rendering, the report is saved in HTML, PDF, or Word format. This embodiment also provides a preview function, allowing users to check the content and make manual adjustments, such as adding comments or modifying results. After confirmation, the final report is saved and a timestamp is added. This automated process significantly reduces report writing time and ensures content standardization and consistency.

[0066] As described above, after generating the FPA table, a user interface can be provided. This interface displays the descriptions of function items, data element types, and file reference types in the function point analysis table. Based on user interactions with the interface, the number of function points in the table is recalculated, and the software evaluation report is updated accordingly. This interactive support ensures the flexibility of the evaluation, allowing users to fine-tune the results according to their actual needs, thus improving their usability. For example, if a user finds an incorrect classification of a function item description, they can modify it through the interface. This embodiment of the invention can immediately recalculate the relevant function points and update the summary section of the report, avoiding the tedious manual recalculation required in traditional methods.

[0067] In this embodiment of the invention, the process of generating a software evaluation report can be as follows: based on a predefined report template, a template engine dynamically populates at least one of the following: a software project summary, a software evaluation result summary, and a description of software functional items, to generate a software evaluation report. The template design covers sections such as report declaration, evaluation result summary, project overview, evaluation purpose, evaluation method, detailed evaluation results, and special notes. Automated population reduces manual intervention and improves report generation efficiency and consistency. For example, the project overview section automatically extracts project background from the requirements document, while the detailed evaluation results are directly derived from the summary data in the FPA table, ensuring the comprehensiveness and accuracy of the report.

[0068] In this embodiment of the invention, the software requirements document uploaded by the user is first received and parsed, and target analysis data containing function item descriptions, data element types, and file reference types is automatically extracted. Then, based on the function item descriptions and their associated interface images, multimodal analysis technology that integrates text semantics and image features is used to automatically classify the function items, obtaining classification results. On this basis, similarity checks and duplicate checks for function items, as well as checks for illegal and duplicate characters in data elements and file reference types, are performed simultaneously, obtaining check results. After obtaining the above classification results and check results, the classification results and check results are combined to automatically generate a function point analysis table, and a software evaluation report is generated based on the function point analysis table.

[0069] This invention addresses the inefficiencies and inconsistent results of existing methods due to reliance on manual operation by constructing a fully automated evaluation chain, from automatic parsing of requirement documents and multimodal fusion classification to deduplication and formal checks. By introducing multimodal fusion analysis combining text and images, this invention achieves more accurate and comprehensive type identification of functional items, overcoming the technical shortcomings of traditional natural language processing methods, such as low evaluation accuracy and poor reliability due to insufficient data sensitivity and model limitations. Finally, by automatically generating FPA forms and evaluation reports, it completely solves the fundamental problem that existing technologies cannot fully and reliably automate the conversion from requirement documents to FPA forms.

[0070] Figure 10 The software evaluation device 1000 shown is capable of achieving Figure 1 The method described in the embodiment achieves the same technical effect, and can be specifically referred to in the above description. Figure 1 The software evaluation method of the illustrated embodiment will not be described in detail here. The software evaluation apparatus 1000 includes: The parsing module 1001 is used to receive a software requirement document uploaded by a user, parse the software requirement document, and extract target analysis data; the target analysis data includes at least one of functional item description, data element type, and file reference type; wherein, the functional item description is the descriptive text of the functional item defined in the software requirement document; The classification module 1002 is used to classify the function items based on the function item description and the interface image associated with the function item description, using multimodal fusion analysis technology to obtain a classification result; the multimodal fusion analysis technology includes text semantic understanding and image feature recognition; The inspection module 1003 is used to perform formal checks on the function items, the data element types, and the file reference types to obtain formal check results; the formal checks include function item deduplication, illegal character checks, and character duplication checks; The generation module 1004 is used to generate a function point analysis table based on the classification results and the form check results, and to generate a software evaluation report based on the function point analysis table.

[0071] Optionally, the functional items include first-level functional items, second-level functional items, and third-level functional items; wherein, the first-level functional items correspond to the highest-level chapter titles in the software requirements document; the second-level functional items correspond to the sub-chapter titles under the highest-level chapter titles; and the third-level functional items correspond to the lowest-level chapter titles under the sub-chapter titles.

[0072] Optionally, the classification module 1002 is used for: Semantic features are extracted from the description of the functional items to obtain a text feature vector; Visual features are extracted from the interface images associated with the function item descriptions to obtain image feature vectors; The text feature vector and the image feature vector are concatenated to obtain a combined feature vector, and the combined feature vector is then standardized. The standardized combined feature vectors are dynamically weighted and fused using an attention mechanism to generate multimodal fusion features. The attention mechanism is used to determine the weights of the combined feature vectors based on the importance of the text feature vectors and image feature vectors that constitute the combined feature vectors. Based on the multimodal fusion features, a classifier is used to predict the type of the feature item.

[0073] Optionally, the inspection module 1003 is used for: Data cleaning is performed on the aforementioned functional items; the data cleaning includes removing redundant spaces, standardizing symbol formats, and unifying capitalization. After cleaning the data of the aforementioned functional items, the edit distance between the functional items is determined; Based on the edit distance, a similarity score is calculated between the functional items; Based on the similarity score and the preset similarity threshold, similar functional items are identified; If the identified similar functional items belong to the same module and the corresponding data element type and file reference type are the same, they are determined to be duplicate functional items.

[0074] Optionally, the device further includes ( Figure 10 (not shown in the image) The display module 1005 is used to provide a user interface after the function point analysis table is generated; the user interface is used to display the description of the function items, the data element types, and the file reference types in the function point analysis table. The synchronization module 1006 is used to recalculate the number of function points in the function point analysis table based on the user's operation on the user interface, and to update the software evaluation report synchronously.

[0075] Optionally, the generation module 1004 is used for: Based on a predefined report template, the template engine dynamically populates at least one of the following: software project summary, software evaluation results summary, and software feature description, to generate a software evaluation report.

[0076] Optionally, the parsing module 1001 is used for: The software requirements document is formatted to verify whether it contains predefined structural elements. The predefined structural elements include a title, table of contents, chapter numbers, and key fields. The key fields include functional requirement fields and functional description fields. If format validation fails, provide the user with an error message and prompt them to correct the document format.

[0077] In this embodiment of the invention, the software requirements document uploaded by the user is first received and parsed, and target analysis data containing function item descriptions, data element types, and file reference types is automatically extracted. Then, based on the function item descriptions and their associated interface images, multimodal analysis technology that integrates text semantics and image features is used to automatically classify the function items, obtaining classification results. On this basis, similarity checks and duplicate checks for function items, as well as checks for illegal and duplicate characters in data elements and file reference types, are performed simultaneously, obtaining check results. After obtaining the above classification results and check results, the classification results and check results are combined to automatically generate a function point analysis table, and a software evaluation report is generated based on the function point analysis table.

[0078] This invention addresses the inefficiencies and inconsistent results of existing methods due to reliance on manual operation by constructing a fully automated evaluation chain, from automatic parsing of requirement documents and multimodal fusion classification to deduplication and formal checks. By introducing multimodal fusion analysis combining text and images, this invention achieves more accurate and comprehensive type identification of functional items, overcoming the technical shortcomings of traditional natural language processing methods, such as low evaluation accuracy and poor reliability due to insufficient data sensitivity and model limitations. Finally, by automatically generating FPA forms and evaluation reports, it completely solves the fundamental problem that existing technologies cannot fully and reliably automate the conversion from requirement documents to FPA forms.

[0079] Figure 11 This is a schematic diagram of the structure of an electronic device provided in one embodiment of the present invention. Please refer to it. Figure 11 At the hardware level, the electronic device includes a processor, and optionally also includes an internal bus, a network interface, and memory. The memory may include main memory, such as high-speed random-access memory (RAM), or non-volatile memory, such as at least one disk drive. Of course, the electronic device may also include other hardware required for other business operations.

[0080] The processor, network interface, and memory can be interconnected via an internal bus, which can be an ISA (Industry Standard Architecture) bus, a PCI (Peripheral Component Interconnect) bus, or an EISA (Extended Industry Standard Architecture) bus, etc. This bus can be divided into address bus, data bus, control bus, etc. For ease of representation, Figure 11 The symbol is represented by a single double-headed arrow, but this does not mean that there is only one bus or one type of bus.

[0081] Memory is used to store programs. Specifically, programs may include program code, which includes computer operation instructions. Memory may include main memory and non-volatile memory, and provides instructions and data to the processor.

[0082] The processor reads the corresponding computer program from non-volatile memory into main memory and then executes it, forming a non-contiguous transfer configuration at the logical level. The processor executes the program stored in memory and specifically performs the following operations: The system receives software requirements documents uploaded by users, parses the software requirements documents, and extracts target analysis data. The target analysis data includes functional item descriptions, data element types, and file reference types. The functional item descriptions are the descriptive text of the functional items defined in the software requirements document. Based on the function item descriptions and the associated interface images, multimodal fusion analysis technology is used to classify the function items and obtain classification results; the multimodal fusion analysis technology includes text semantic understanding and image feature recognition. The function items are subjected to function item deduplication to obtain a first check result; and the data element type and the file reference type are subjected to formal checks to obtain a second check result; the formal checks include illegal character checks and character duplication checks. Based on the classification results, the first inspection results, and the second inspection results, a function point analysis table is generated, and a software evaluation report is generated based on the function point analysis table.

[0083] The above is as described in the present invention. Figure 1 The software evaluation method disclosed in the embodiments described above can be applied to a processor or implemented by a processor. The processor may be an integrated circuit chip with signal processing capabilities. During implementation, each step of the above method can be completed by integrated logic circuits in the processor's hardware or by instructions in software form. The processor can be a general-purpose processor, including a Central Processing Unit (CPU), a Network Processor (NP), etc.; it can also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field-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 one or more embodiments of the present invention. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the methods disclosed in one or more embodiments of the present invention 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 module can reside in a mature storage medium in the field, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, or registers. This storage medium is located in memory, and the processor reads information from the memory and, in conjunction with its hardware, completes the steps of the above method.

[0084] The electronic device can also perform Figure 1 The software evaluation method described herein will not be elaborated further here.

[0085] This invention also provides a computer-readable storage medium that stores one or more programs, the programs including instructions that, when executed by a portable electronic device including multiple applications, enable the portable electronic device to perform... Figure 1 The method of the illustrated embodiment will not be described in detail here.

[0086] This invention also provides a computer program product stored in a storage medium and executed by at least one processor to implement... Figure 1 The method of the illustrated embodiment will not be described in detail here.

[0087] Of course, in addition to the software implementation, the electronic device of the present invention does not exclude other implementation methods, such as logic devices or a combination of hardware and software, etc. That is to say, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or logic devices.

[0088] In summary, the above description is merely a preferred embodiment of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of one or more embodiments of the present invention should be included within the scope of protection of one or more embodiments of the present invention.

[0089] The systems, devices, modules, or units described in the above embodiments can be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, a computer can be, for example, a personal computer, laptop computer, cellular phone, camera phone, smartphone, personal digital assistant, media player, navigation device, email device, game console, tablet computer, wearable device, or any combination of these devices.

[0090] Computer-readable media, including both permanent and non-permanent, removable and non-removable media, can store information using any method or technology. Information can be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media 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 memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined in this embodiment of the invention, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.

[0091] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0092] The various embodiments in this invention are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the system embodiments are basically similar to the method embodiments, so the description is relatively simple; relevant parts can be referred to the descriptions in the method embodiments.< / sep> < / cls>

Claims

1. A software evaluation method, characterized in that, include: The system receives software requirements documents uploaded by users, parses the software requirements documents, and extracts target analysis data. The target analysis data includes functional item descriptions, data element types, and file reference types. The functional item descriptions are the descriptive text of the functional items defined in the software requirements document. Based on the function item descriptions and the associated interface images, multimodal fusion analysis technology is used to classify the function items and obtain classification results; the multimodal fusion analysis technology includes text semantic understanding and image feature recognition. The function items are subjected to function item deduplication to obtain a first check result; and the data element type and the file reference type are subjected to formal checks to obtain a second check result; the formal checks include illegal character checks and character duplication checks. Based on the classification results, the first inspection results, and the second inspection results, a function point analysis table is generated, and a software evaluation report is generated based on the function point analysis table.

2. The method according to claim 1, characterized in that, The functional items include first-level functional items, second-level functional items, and third-level functional items; wherein, the first-level functional items correspond to the highest-level chapter titles in the software requirements document; the second-level functional items correspond to the sub-chapter titles under the highest-level chapter titles; and the third-level functional items correspond to the lowest-level chapter titles under the sub-chapter titles.

3. The method according to claim 1, characterized in that, Based on the function item description and the associated interface image, multimodal fusion analysis technology is used to classify the function items, including: Semantic features are extracted from the description of the functional items to obtain a text feature vector; Visual features are extracted from the interface images associated with the function item descriptions to obtain image feature vectors; The text feature vector and the image feature vector are concatenated to obtain a combined feature vector, and the combined feature vector is then standardized. The standardized combined feature vectors are dynamically weighted and fused using an attention mechanism to generate multimodal fusion features. The attention mechanism is used to determine the weights of the combined feature vectors based on the importance of the text feature vectors and image feature vectors that constitute the combined feature vectors. Based on the multimodal fusion features, a classifier is used to predict the type of the feature item.

4. The method according to claim 1, characterized in that, The process of performing function item deduplication includes: Data cleaning is performed on the aforementioned functional items; the data cleaning includes removing redundant spaces, standardizing symbol formats, and unifying capitalization. After cleaning the data of the aforementioned functional items, the edit distance between the functional items is determined; Based on the edit distance, a similarity score is calculated between the functional items; Based on the similarity score and the preset similarity threshold, similar functional items are identified; If the identified similar function items belong to the same module and the corresponding data element type and file reference type are the same, they are determined to be duplicate function items.

5. The method according to claim 1, characterized in that, After generating the function point analysis table, the method further includes: A user interface is provided; the user interface is used to display the description of the function items, the data element types, and the file reference types in the function point analysis table; Based on the user's actions on the user interface, the number of function points in the function point analysis table is recalculated, and the software evaluation report is updated synchronously.

6. The method according to claim 1, characterized in that, The generated software evaluation report includes: Based on a predefined report template, the template engine dynamically populates at least one of the following: software project summary, software evaluation results summary, and software feature description, to generate a software evaluation report.

7. The method according to claim 1, characterized in that, The software requirements document uploaded by the user includes: The software requirements document is formatted to verify whether it contains predefined structural elements. The predefined structural elements include a title, table of contents, chapter numbers, and key fields. The key fields include functional requirement fields and functional description fields. If format validation fails, provide the user with an error message and prompt them to correct the document format.

8. A software evaluation apparatus, characterized in that, include: The parsing module is used to receive software requirement documents uploaded by users, parse the software requirement documents, and extract target analysis data; the target analysis data includes at least one of functional item descriptions, data element types, and file reference types; wherein, the functional item descriptions are descriptive texts of functional items defined in the software requirement documents; The classification module is used to classify the functional items based on the description of the functional items and the interface images associated with the description of the functional items, using multimodal fusion analysis technology to obtain classification results; the multimodal fusion analysis technology includes text semantic understanding and image feature recognition; The inspection module is used to perform formal checks on the function items, the data element types, and the file reference types to obtain formal check results; the formal checks include function item deduplication, illegal character checks, and character duplication checks; The generation module is used to generate a function point analysis table based on the classification results and the form check results, and to generate a software evaluation report based on the function point analysis table.

9. An electronic device, characterized in that, include: A memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program, when executed by the processor, implements the steps of the method as described in any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium is used to store computer-executable instructions that, when executed by a processor, implement the steps of the method described in any one of claims 1 to 7.

11. A computer program product, characterized in that, The computer program product includes a computer program that, when executed by a processor, implements the steps of the method described in any one of claims 1 to 7.