Software development performance evaluation method, device and computer equipment

By hierarchically processing business processes and product functions, establishing business trees and function trees, and calculating performance indicators, the problem of insufficient granularity in traditional software development performance evaluation methods is solved, enabling fine-grained evaluation and evaluation recommendations.

CN115686442BActive Publication Date: 2026-02-03CHINA PING AN LIFE INSURANCE CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211317853.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-10-26
Publication Date
2026-02-03
Estimated Expiration
2042-10-26

AI Technical Summary

Technical Problem

In existing technologies, traditional software development efficiency evaluation methods cannot perform fine-grained evaluations of business and product internals, resulting in single evaluation indicators that cannot meet the fine-grained requirements of complex business processes.

Method used

By hierarchically processing business processes and product functions, a business tree and a function tree are formed, a product map is built, and the performance indicators of each node are calculated using depth-first search to form a function list. Based on the performance indicators, evaluation suggestions are output.

Benefits of technology

It enables fine-grained evaluation of business and product internals, outputs detailed evaluation recommendations, and improves the accuracy and efficiency of software development performance evaluation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115686442B_ABST
    Figure CN115686442B_ABST
Patent Text Reader

Abstract

The application relates to the field of computer software development, and provides a software research and development efficiency evaluation method, device and computer equipment, which comprises the following steps: acquiring a business process and product functions corresponding to the business process; performing hierarchical processing on the business process to obtain a business tree; performing hierarchical processing on the product functions to obtain a function tree; associating the function tree with the business tree corresponding to the function tree to obtain a product map; calculating the efficiency of each node of the function tree according to the product map to obtain an efficiency index corresponding to each node; traversing the efficiency index corresponding to each node of the function tree to form a function list; and filtering out the efficiency index corresponding to a preset index value from the function list to output an evaluation suggestion. The embodiment of the application can perform fine-granularity evaluation on the business and product internals, and output an evaluation suggestion.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of computer software development, and particularly relates to a software development efficiency evaluation method and device and computer equipment. BACKGROUND

[0002] Development efficiency refers to the level of development resources required to implement a business process of a certain standard complexity. With the development of information technology, in the development of medical systems and life insurance systems, more and more enterprises begin to develop business platforms to support business processes with reusable product functions to reduce costs and increase efficiency. However, the evaluation of business platform development efficiency is not mature. The traditional method uses the average development resources consumed by each business process requirement as the development efficiency index, and the evaluation index is relatively single. The single index can only be used as a whole evaluation, and cannot be used for fine-grained evaluation of the business and product. SUMMARY

[0003] The present application aims to at least partially solve the problems of the prior art, and provides a software development efficiency evaluation method, device and computer equipment, which can perform fine-grained evaluation of the business and product and output evaluation suggestions.

[0004] The technical solutions of the embodiments of the present application are as follows:

[0005] In a first aspect, the present application provides a software development efficiency evaluation method, comprising:

[0006] obtaining a business process and a product function corresponding to the business process;

[0007] performing hierarchical processing on the business process to obtain a business tree;

[0008] performing hierarchical processing on the product function to obtain a function tree;

[0009] associating the function tree with the business tree corresponding to the function tree to obtain a product map;

[0010] calculating the efficiency of each node of the function tree according to the product map to obtain an efficiency index corresponding to each node;

[0011] traversing the efficiency index corresponding to each node of the function tree to form a function list;

[0012] According to the function list, the efficiency index corresponding to a preset index value is filtered out, and an evaluation suggestion is output.

[0013] According to some embodiments of the present application, the hierarchical processing of the business process to obtain a business tree comprises:

[0014] obtaining a business whole of the business process;

[0015] decomposing the business whole as a root node to obtain a main business;

[0016] decomposing the main business as a sub-node to obtain a single business;

[0017] forming the business tree by taking the single business as a leaf node of the main business.

[0018] According to some embodiments of the present application, the hierarchical processing of the product function to obtain a function tree comprises:

[0019] obtaining a product whole of the product function;

[0020] decomposing the product whole as a root node to obtain a main product function;

[0021] decomposing the main product function as a sub-node to obtain a single product function;

[0022] forming the function tree by taking the single product function as a leaf node of the main product function.

[0023] According to some embodiments of the present application, the association of the function tree and the business tree corresponding to the function tree to obtain a product map comprises:

[0024] obtaining an initial matrix, wherein each element in the initial matrix is set to 0, each row of the initial matrix corresponds to a single product function, and each column of the initial matrix corresponds to a single business process;

[0025] matching each single product function of the function tree with each single business process of the business tree respectively by traversing each single product function of the function tree;

[0026] if the single product function and the single business process match each other, setting the element values of the single product function and the single business process in the initial matrix to 1 to obtain a product map.

[0027] According to some embodiments of the present application, the calculation of the performance of each node of the function tree according to the product map to obtain the performance index corresponding to each node comprises:

[0028] traversing each node of the function tree by using a depth-first search, and calculating the performance of each node of the function tree according to the product map to obtain the performance index corresponding to each node.

[0029] According to some embodiments of this application, each node of the function tree includes a preset amount of resources consumed and a number of business processes supported;

[0030] The process involves using a depth-first search to traverse each node of the function tree, calculating the performance of each node based on the product map, and obtaining the performance index corresponding to each node, including:

[0031] Starting from the root node of the function tree, if the current node is a leaf node, the efficiency index of the leaf node is calculated based on the amount of resources consumed and the number of supported business processes, wherein the number of supported business processes is obtained by traversing the product map.

[0032] If the current node is a child node, the performance index of the child node is calculated based on the performance index of the leaf node of the child node.

[0033] The performance index of the root node is calculated based on the performance index of the child nodes and the performance index of the leaf nodes, thus obtaining the performance index corresponding to each node.

[0034] According to some embodiments of this application, the step of filtering out performance indicators corresponding to preset indicator values ​​based on the function list and outputting evaluation suggestions includes:

[0035] If the performance indicator is equal to 0, output a suggestion to either integrate more business processes or stop development.

[0036] If the performance indicator is greater than 0 and less than the preset indicator value, a suggestion is output to integrate more business processes or to split the product functions.

[0037] Secondly, this application provides a software development efficiency evaluation device, comprising:

[0038] The data acquisition module is used to acquire business processes and product functions corresponding to those business processes.

[0039] The first processing module is used to hierarchically process the business process to obtain a business tree;

[0040] The second processing module is used to hierarchically process the product functions to obtain a function tree;

[0041] The association module is used to associate the function tree with the business tree corresponding to the function tree to obtain a product map;

[0042] The third processing module is used to calculate the performance of each node of the function tree based on the product map, and obtain the performance index corresponding to each node.

[0043] The fourth processing module is configured to traverse the performance indicators corresponding to each node of the function tree to form a function list.

[0044] The evaluation processing module is configured to filter out the performance indicators less than a preset index value according to the function list, and output an evaluation suggestion.

[0045] In a third aspect, a computer device is provided. The computer device includes a memory and a processor. The memory stores computer readable instructions. When the computer readable instructions are executed by one or more processors, the one or more processors perform the steps of any of the methods described in the first aspect.

[0046] In a fourth aspect, a computer readable storage medium is provided. The storage medium can be read and written by a processor. The storage medium stores computer instructions. When the computer readable instructions are executed by one or more processors, the one or more processors perform the steps of any of the methods described in the first aspect.

[0047] The technical solutions provided by the embodiments of the present application have the following beneficial effects:

[0048] The embodiments of the present application provide a software development performance evaluation method, device and computer device. The software development performance evaluation method includes: obtaining a business process and a product function corresponding to the business process; performing hierarchical processing on the business process to obtain a business tree. Through hierarchical processing, fine-grained business information can be obtained. Performing hierarchical processing on the product function to obtain a function tree. Through hierarchical processing, fine-grained function information can be obtained. Associating the function tree and the business tree corresponding to the function tree to obtain a product map. Through the association, the business process supported by the product function can be obtained. Calculating the performance of each node of the function tree according to the product map to obtain performance indicators corresponding to each node. Traversing the performance indicators corresponding to each node of the function tree to form a function list. The function list can display the performance indicators of each node, which is conducive to outputting suggestions according to the performance indicators. Filtering out the performance indicators less than a preset index value according to the function list, and outputting an evaluation suggestion. Compared with the overall evaluation by a single evaluation index in the prior art, the embodiments of the present application can perform fine-grained evaluation on the business and product internally, and output evaluation suggestions. BRIEF DESCRIPTION OF DRAWINGS

[0049] Figure 1 FIG. 1 is a flowchart of a software development performance evaluation method provided by an embodiment of the present application;

[0050] Figure 2 FIG. 2 is a flowchart of step S200 in FIG. 1; Figure 1 FIG. 3 is a flowchart of a sub-step of step S200 in FIG. 2.

[0051] Figure 3 is Figure 1 a sub-step flowchart of step S300 in

[0052] Figure 4 is Figure 1 a sub-step flowchart of step S400 in

[0053] Figure 5 is a flowchart of a software development performance evaluation method provided by another embodiment of the present application;

[0054] Figure 6 is Figure 1 a sub-step flowchart of step S700 in

[0055] Figure 7 is a functional tree and business tree support relationship diagram of a software development performance evaluation method provided by an embodiment of the present application;

[0056] Figure 8 is a structural diagram of a software development performance evaluation device provided by an embodiment of the present application;

[0057] Figure 9 is a structural diagram of a computer device provided by an embodiment of the present application. DETAILED DESCRIPTION

[0058] In order to make the objectives, technical solutions and advantages of the present application clearer, the present application will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not intended to limit the present application.

[0059] It should be noted that, unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which the present application belongs. The terms used herein are only for the purpose of describing the embodiments of the present application and are not intended to limit the present application.

[0060] First, several terms involved in the present application are analyzed:

[0061] Middle platform: generally used in large enterprises, refers to build a flexible and rapid response to changes in the architecture, quickly realize the needs of the front end, avoid duplication of construction, to improve work efficiency. Middle platform, as part of the platform organization, is the organizational module between the front-line combat units and the back-end resource departments. These modules are mostly so-called cost centers in traditional organizations, which are responsible for integrating back-end resources into the "middleware" needed by the front-line combat, and facilitating on-demand calling. Middle platform is divided into three categories: business middle platform, data middle platform and organizational middle platform. Business middle platform: mostly traditional cost centers, integrating back-end resources into the "middleware" needed by the front-line combat, and facilitating on-demand calling. Typical business middle platform such as live broadcast middle platform, technology middle platform, etc. "Business middle platform" is also known as "tangible middle platform", because there is a physical department. Data middle platform: data middle platform is called "dataization of business middle platform", which forms a data collection after sharing resources and capabilities, and makes intelligent decisions based on algorithms to support the operation of business middle platform and organizational middle platform. Organizational middle platform: composed of teams of business partners (Business Partner, BP) sent by finance, human resources, strategy and other departments to the front line. BP team will enter the small team of the front line to fight together with professional perspective, and also represent the back-end efficient allocation of resources and policies. "Organizational middle platform" is also known as "intangible middle platform", because there is no physical department.

[0062] Tree: a tree is a data structure composed of n (n ≥ 0) finite nodes into a set with hierarchical relationship. It is called "tree" because it looks like an upside-down tree, that is, it is root up, and leaf down. It has the following characteristics: each node has zero or more child nodes; nodes without parent nodes are called root nodes; each non-root node has and only has one parent node; except for the root node, each child node can be divided into multiple disjoint sub-trees, and nodes with no child nodes (i.e. degree 0) in a tree are called leaf nodes.

[0063] The embodiment of the application provides a software development efficiency evaluation method, device and computer equipment, the software development efficiency evaluation method comprises the following steps: obtaining a business process and product functions corresponding to the business process; performing hierarchical processing on the business process to obtain a business tree, and the hierarchical processing can obtain fine-granularity business information; performing hierarchical processing on the product functions to obtain a function tree, and the hierarchical processing can obtain fine-granularity function information; associating the function tree and the business tree corresponding to the function tree to obtain a product map, and the association relationship can obtain a business process supported by the product functions; calculating the efficiency of each node of the function tree according to the product map to obtain an efficiency index corresponding to each node; traversing the efficiency index corresponding to each node of the function tree to form a function list, the function list can display the efficiency index of each node, which is beneficial to subsequent output of a suggestion according to the efficiency index; and filtering out the efficiency index corresponding to a preset index value from the function list, and outputting an evaluation suggestion. Compared with the overall evaluation by using a single evaluation index in the prior art, the embodiment of the application can perform fine-granularity evaluation on the business and product internally, and output an evaluation suggestion.

[0064] It should be noted that the software development efficiency evaluation method can be used for efficiency evaluation of mid-stage development, and can also be used for efficiency evaluation of front-stage or back-stage, and output of an evaluation suggestion, so that the front-stage, the mid-stage and the back-stage can construct reusable product function modules, and reduce the use of costs and resources.

[0065] The embodiment of the application can acquire and process related data input by the developed software based on artificial intelligence technology. The artificial intelligence (AI) is to use a digital computer or a machine controlled by a digital computer to simulate, extend and expand human intelligence, perceive the environment, acquire knowledge and use the knowledge to obtain the best results.

[0066] The artificial intelligence basic technology generally includes technologies such as sensors, special artificial intelligence chips, cloud computing, distributed storage, big data processing technology, operation / interaction system, mechatronics and the like. The artificial intelligence software technology mainly includes computer vision technology, robot technology, biometric technology, speech processing technology, natural language processing technology and machine learning / deep learning and the like.

[0067] The embodiments of the present application can be used in many general purpose or special purpose computer system environments or configurations. For example: personal computer, server computer, handheld or portable device, tablet device, multiprocessor system, microprocessor-based system, set top box, programmable consumer electronics, network PC, minicomputer, mainframe computer, distributed computing environment that includes any of the above systems or devices, etc. The present application can be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The present application can also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules can be located in both local and remote computer storage media including memory storage devices.

[0068] The software development efficiency evaluation method, device and computer equipment provided by the embodiments of the present application are described below with reference to the accompanying drawings.

[0069] Referring to Figure 1 , Figure 1 A flowchart of a software development efficiency evaluation method provided by the embodiments of the present application is shown. The software development efficiency evaluation method includes but is not limited to steps S100, S200, S300, S400, S500, S600 and S700.

[0070] Step S100: Obtain a business process and a product function corresponding to the business process.

[0071] In an embodiment, the business process is obtained through business requirements. According to the business requirements, the business process is formed, and the product function supporting the business process is designed by the development personnel, that is, the function involved in the business process is implemented. One business process can be supported by multiple product functions, and one product function can support multiple business processes, and the product function has reusability. By obtaining the business process and the product function corresponding to the business process, it is beneficial to subsequently evaluate the development efficiency according to the business process and the product function.

[0072] Step S200: Hierarchically process the business process to obtain a business tree.

[0073] As Figure 2 indicated, the business process is hierarchically processed to obtain a business tree, including but not limited to the following steps:

[0074] Step S210: Obtain a business whole of the business process.

[0075] In an embodiment, the business flow is summarized according to prior knowledge to obtain a business whole, and the business whole of the business flow is beneficial to subsequent formation of a business tree. The prior knowledge is experience of an expert, and the expert summarizes the business flow according to the experience.

[0076] In step S220, the business whole is taken as a root node, and the business whole is decomposed to obtain main businesses.

[0077] In an embodiment, the business whole is taken as a root node, and the expert decomposes the business whole according to experience to obtain main businesses, which is beneficial to subsequent decomposition of the main businesses to obtain a business tree. Illustratively, the business whole is life insurance, and the expert divides the life insurance into sales and renewal according to experience, and the sales and the renewal are main businesses. The scope of the life insurance as the business whole is relatively wide, and the main businesses are further refinement of the business whole.

[0078] In step S230, the main businesses are taken as child nodes, and the main businesses are decomposed to obtain single businesses.

[0079] In an embodiment, the root node business whole and the main businesses are obtained according to step S220, the main businesses are taken as child nodes, and then the expert decomposes the main businesses according to experience to obtain single businesses. The main businesses are refinement of the business whole, and can also be refinement of the main businesses. The single businesses are further refinement of the main businesses of the last layer, which is beneficial to subsequent formation of a business tree according to the single businesses.

[0080] In an embodiment, the main businesses as child nodes can have only one layer, and the main businesses are child nodes of the business whole. The main businesses of this layer are decomposed to obtain single businesses. The main businesses as child nodes can also have multiple layers. The main businesses of a first layer are child nodes of the business whole, the main businesses of a second layer are child nodes of the main businesses of the first layer, and so on. The main businesses of an Nth layer are child nodes of the main businesses of an (N-1)th layer. The main businesses of the Nth layer are decomposed again to obtain single businesses. Illustratively, the business whole is life insurance, and the expert divides the life insurance into sales and renewal according to experience. The sales and the renewal are main businesses. The main businesses of the sales and the renewal are further refined into sales visit and renewal visit. The sales visit and the renewal visit are further refined. The sales visit is refined into visit plan and visit execution. The renewal visit is refined into visit execution. Finally, the visit execution is refined into remote visit, and the visit plan is refined into content usage to obtain single businesses. The above example has multiple layers of main businesses, and can view the structure of the business flow in a fine granularity.

[0081] In step S240, the single businesses are taken as leaf nodes of the main businesses to form a business tree.

[0082] In one embodiment, the root node and child nodes of the business tree are obtained according to steps S210 to S230. A single business is designated as a leaf node of the main business, and the single business is also designated as a leaf node of the last-level main business, thus forming a business tree. In this business tree, the leaf nodes represent more granular business processes, which facilitates fine-grained evaluation of the business. For example, remote meeting and content usage are designated as leaf nodes, thereby forming the business tree. The above-described division of business processes into overall business, main business, and single business based on prior knowledge allows for the acquisition of fine-grained business information through hierarchical processing.

[0083] Step S300: The product functions are classified to obtain a function tree.

[0084] like Figure 3 As shown, the product functions are hierarchically processed to obtain a function tree, which includes, but is not limited to, the following steps:

[0085] Step S310: Obtain the overall product functionality.

[0086] In one embodiment, the product functions are summarized based on prior knowledge to obtain the overall product. Obtaining the overall product functions facilitates the subsequent formation of a function tree. Here, the prior knowledge refers to the experience of experts, who summarize the product functions based on their experience.

[0087] Step S320: Using the product as the root node, decompose the product to obtain the main product functions.

[0088] In one embodiment, the entire product is taken as the root node. Experts decompose the entire product based on experience to obtain the main product functions. This facilitates subsequent decomposition of the main product functions to obtain a function tree. For example, the entire product is a visit assistant. Experts divide the visit assistant into visit tools and visit content, etc., based on experience. The visit tools and visit content are the main product functions. The visit assistant as a whole has a relatively broad scope, while the main product functions are a further refinement of the entire product.

[0089] Step S330: Decompose the main product function as a sub-node to obtain a single product function.

[0090] In one embodiment, the root node product as a whole and the main product function are obtained according to step S320. The main product function is used as a child node. Then, the expert decomposes the main product function based on experience to obtain a single product function. The main product function is a refinement of the product as a whole, or it can be a refinement of the main product function of the main product function. The single product function is a further refinement of the main product function of the last layer of refinement, which is beneficial to the subsequent generation of the function tree based on the single product function.

[0091] In one embodiment, a main product function as a child node can have only one layer, where the main product function is a child node of the overall product. This layer of main product function is then decomposed to obtain a single product function. Alternatively, a main product function as a child node can have multiple layers. The first layer of main product function is a child node of the overall product, the second layer is a child node of the first layer, and so on, with the Nth layer's main product function being a child node of the (N-1)th layer. The Nth layer's main product function is then further decomposed to obtain a single product function. For example, the overall product is a visit assistant. Experts, based on experience, divide the visit assistant into visit tools and visit content, etc. These visit tools and visit content are the main product functions. The visit tools and visit content are further refined into meeting tools and content organization. Meeting tools are further refined into offline meeting rooms and online meeting rooms, and content organization is refined into content display. The above example has multiple layers of main product functions, allowing for a view of the fine-grained structure within the product.

[0092] Step S340: Use a single product function as a leaf node of the main product function to form a function tree.

[0093] In one embodiment, the root node and child nodes of the function tree are obtained according to steps S310 to S330. Individual product functions are designated as leaf nodes of the main product functions, forming a function tree. In this function tree, the leaf nodes represent more granular product functions, facilitating fine-grained evaluation of the product. For example, offline meeting rooms, online meeting rooms, and content display are designated as leaf nodes, thus forming the function tree. The above-described division of product functions into overall product, main product functions, and individual product functions based on prior knowledge allows for the acquisition of fine-grained functional information through hierarchical processing.

[0094] Step S400: Associate the function tree and the corresponding business tree to obtain the product map.

[0095] like Figure 4 As shown, by associating the function tree and the corresponding business tree, a product map is obtained, which includes, but is not limited to, the following steps:

[0096] Step S410: Obtain the initial matrix. The value of each element in the initial matrix is ​​set to 0. Each row of the initial matrix corresponds to a single product function, and each column of the initial matrix corresponds to a single business process.

[0097] In one embodiment, an initial matrix is ​​first constructed. Each row of the initial matrix corresponds to a single product function, i.e., a leaf node of the function tree, and each column of the initial matrix corresponds to a single business process, i.e., a leaf node of the business tree. The value of each element in the rows and columns of the initial matrix is ​​set to 0, which facilitates subsequent modification of the elements in the initial matrix to obtain the product map. Alternatively, each column of the initial matrix can correspond to a single product function, and each row can correspond to a single business process; this has little impact on obtaining the product map.

[0098] Step S420: Traverse each individual product function in the function tree and match the currently traversed individual product function with each individual business process in the business tree.

[0099] In one embodiment, based on the function tree obtained in step S300, the function tree is traversed, and the single product function corresponding to each leaf node of the function tree is traversed. The single product function is a relatively specific function. Based on the single product function, the single business process corresponding to each leaf node of the business tree is traversed, and the currently traversed single product function is matched with each single business process of the business tree. That is, it is to determine whether the single product function supports the single business process. By traversing, it is convenient to build the product map in the future.

[0100] Step S430: If the currently traversed single product function matches a single business process, set the element value of the matching single product function and single business process in the initial matrix to 1 to obtain the product map.

[0101] In one embodiment, if the currently traversed single product function matches a single business process, meaning the single product function supports a single business process, the element value corresponding to the single business process supported by the single product function is set to 1 in the initial matrix. Traversal is then complete, and a product map is obtained. By obtaining the product map, the connection between the function tree and the business tree is established. Based on fine-grained division, reusable product functions can be obtained.

[0102] Step S500: Calculate the performance of each node in the function tree based on the product map to obtain the performance index corresponding to each node.

[0103] In one embodiment, the characteristics of depth-first search are: each depth-first search result is necessarily a connected component of the graph. Based on the established business tree and function tree, a connected component can be formed, and all nodes in the tree can be traversed. By using depth-first search to traverse each node of the function tree, the number of business processes is obtained based on the product map, and then the efficiency of each node in the function tree is calculated to obtain the corresponding efficiency index. Breadth-first search can also traverse each node of the tree, obtain the number of business processes based on the product map, and then calculate the efficiency of each node in the function tree to obtain the corresponding efficiency index. This efficiency index provides feedback on the resources used by the function, which is beneficial for R&D personnel to develop low-cost, high-efficiency products.

[0104] In one embodiment, each node of the function tree includes a preset amount of resources consumed and a preset number of business processes supported; such as Figure 5 As shown, a depth-first search is used to traverse each node of the function tree. Based on the product map, the performance of each node in the function tree is calculated to obtain the performance index corresponding to each node. This includes, but is not limited to, the following steps:

[0105] Step S810: Start traversing from the root node of the function tree. If the current node is a leaf node, calculate the efficiency index of the leaf node based on the amount of resources consumed and the number of business processes supported. The number of business processes supported is obtained by traversing the product map.

[0106] In one embodiment, the traversal starts from the root node of the function tree. If the current node is a leaf node, the efficiency index of the leaf node is calculated based on the amount of resources consumed and the number of supported business processes. The efficiency index provides feedback on the resources used by the function, which helps R&D personnel develop low-cost, high-efficiency products. The resource consumption data is set by experts based on experience and is represented as `product_cost`. This can be set according to requirements and will not be elaborated here. The number of supported business processes is the number of business processes supported by a single product function. The number of supported business processes for each single product function is the sum of the values ​​corresponding to the rows of the matrix in the product map, or the sum of the values ​​corresponding to the columns of the matrix in the product map, represented as `process_num`. The number of supported business processes obtained from the product map is expressed as follows:

[0107] process_num=SUM{S[p,i]},i=1,2,…,M

[0108] Where SUM{} is the summation function, S[p,i] represents the value in the initial matrix, p represents the leaf node of the function tree, and i represents the leaf node of the business tree.

[0109] In another embodiment, the performance index is denoted as efficiency1.

[0110] efficiency1=process_num / product_cost

[0111] Step S820: If the current node is a child node, calculate the performance index of the child node based on the performance index of the leaf node of the child node.

[0112] In one embodiment, if the current node is a child node, the traversal of child nodes continues until a leaf node of the child node is reached. Based on the performance index of the leaf node obtained in step S810, the performance index of the parent node (i.e., the child node) of the leaf node is calculated. Specifically, the performance index of the child node is obtained by averaging the performance indices of all leaf nodes of that child node. This process is repeated, traversing the entire tree from bottom to top. The performance index of an upper-level child node is obtained by averaging the performance indices of all its lower-level child nodes. Obtaining the performance index of the child nodes is beneficial for subsequently obtaining the performance index of the root node. The performance index of the child node is expressed as:

[0113] efficiency2=AVERAGE{efficiency[i]},i=1,2,…C

[0114] Where C represents the number of child nodes of a child node, and AVERAGE{} represents the mean function.

[0115] Step S830: Calculate the root node's performance index based on the performance indices of the child nodes and the leaf nodes to obtain the performance indices for each node.

[0116] In one embodiment, the efficiency indicators of child nodes and the energy efficiency of leaf nodes are obtained according to steps S810 and S820. The efficiency indicator of the root node is calculated. The efficiency indicator of the root node is the average of the efficiency indicators of all child nodes of the root node and the average of the efficiency indicators of all child nodes of the child nodes below the root node. The efficiency indicators of child nodes can be calculated according to steps S810 and S820, thereby obtaining the efficiency indicators corresponding to each node, which is beneficial for the subsequent formation of a function list.

[0117] Step S600: Traverse the performance indicators corresponding to each node of the function tree to form a function list;

[0118] In one embodiment, the performance indicators corresponding to each node of the function tree are traversed to form a function list. Alternatively, the traversed performance indicators can be sorted to form an ordered function list, facilitating subsequent filtering of the performance indicators. The sorting can be ascending or descending; the sorting algorithm used can be insertion sort, shell sort, selection sort, bubble sort, merge sort, quick sort, heap sort, radix sort, etc.

[0119] Step S700: Based on the function list, filter out the performance indicators that are less than the preset indicator values ​​and output evaluation suggestions.

[0120] In one embodiment, based on the function list, if the function list consists of ordered performance indicators, the top k performance indicators in ascending order are selected according to preset indicator values. Here, top k represents a percentage threshold set based on experience, such as 20%, 15%, etc. Outputting evaluation suggestions based on the selected performance indicators helps improve R&D efficiency.

[0121] like Figure 6 As shown, based on the function list, the performance indicators corresponding to values ​​less than the preset indicator values ​​are filtered out, and evaluation suggestions are output, including but not limited to the following steps:

[0122] Step S710: If the performance index is equal to 0, output a suggestion to connect more business processes or stop development.

[0123] In one embodiment, when the performance index is equal to 0, it indicates that no business process is using the product function, requiring the integration of more business processes, or that development of the product function should be stopped to avoid wasting manpower. The system then provides suggestions on integrating more business processes or stopping development, which helps improve development efficiency. The preset index values ​​can be set according to development needs, and will not be elaborated here.

[0124] Step S720: If the performance index is greater than 0 and less than the preset index value, output a suggestion to integrate more business processes or split the product functions.

[0125] In one embodiment, if the performance index is greater than 0 and less than the preset index value, it indicates that there may be a problem with the product function, which may be due to low reusability or excessive R&D resources. It is necessary to integrate more business processes, review R&D resources, or break down large-granularity product functions into smaller functions to achieve reuse. Suggestions for integrating more business processes or breaking down product functions are output, which is beneficial to improving development efficiency.

[0126] like Figure 7As shown, in the functional tree, the product as a whole is a visit assistant. Experts, based on experience, divide the visit assistant into visit tools and visit content, etc. Visit tools are further divided into meeting tools, which are then divided into offline meeting rooms and online meeting rooms, both of which are leaf nodes. Visit content is divided into content organization, also a leaf node. In the business tree, the business as a whole is life insurance. Experts, based on experience, divide life insurance into sales and renewals, etc. Sales are divided into sales visits, which are further subdivided into visit planning and visit execution. Visit execution is further subdivided into remote meetings. Visit planning is further subdivided into content usage. Renewal is further subdivided into renewal visits, which are further subdivided into visit execution, and visit execution is further subdivided into remote meetings. These functional and business trees, through multi-level decomposition, allow us to view their fine-grained internal structure. Establish the relationship between the function tree and the business tree, obtaining an initial matrix with all elements equal to 0. In the function tree, the online meeting room supports remote meetings. Traversing the function tree, each single product function represents the online meeting room; traversing the business tree, each corresponding single business function represents remote meetings. Set the elements corresponding to the online meeting room and remote meetings to 1. Similarly, content display supports content usage. Traversing the function tree, each single product function represents content display; traversing the business tree, each corresponding single business function represents content usage. Set the elements corresponding to content display and content usage to 1. This yields a product map, which is helpful for subsequently obtaining performance indicators for each node based on the product map, thus generating recommendations. The initial matrix is ​​shown in the table below:

[0127] Leaf node 1 Content usage 2 Remote visit 3 Remote visit 1 Offline visit hall 0 0 0 2 Online visit hall 0 0 0 3 Content display 0 0 0

[0128] The resulting product map is shown in the table below:

[0129] Leaf node 1 Content usage 2 Remote visit 3 Remote visit 1 Offline visit hall 0 0 0 2 Online visit hall 0 1 1 3 Content display 1 0 0

[0130] refer to Figure 8This application provides a software development efficiency evaluation device 100. The device includes: acquiring business processes and corresponding product functions using a data acquisition module 110; performing hierarchical processing on the business processes using a first processing module 120 to obtain a business tree, which provides fine-grained business information; performing hierarchical processing on the product functions using a second processing module 130 to obtain a function tree, which provides fine-grained function information; as well as associating the function tree and the corresponding business tree using an association module 140 to obtain a product map, which provides the business processes supported by the product functions; calculating the efficiency of each node in the function tree based on the product map using a third processing module 150 to obtain efficiency indicators for each node; traversing the efficiency indicators for each node in the function tree using a fourth processing module 160 to form a function list, which displays the efficiency indicators for each node, facilitating subsequent suggestions based on the efficiency indicators; and using an evaluation processing module 170 to filter out efficiency indicators with values ​​less than a preset threshold from the function list and output evaluation suggestions. It can perform granular assessments of business and product operations and provide assessment recommendations.

[0131] It should be noted that the data acquisition module 110 is connected to the first processing module 120, the first processing module 120 is connected to the second processing module 130, the second processing module 130 is connected to the association module 140, the association module 140 is connected to the third processing module 150, the third processing module 150 is connected to the fourth processing module 160, and the fourth processing module 160 is connected to the evaluation processing module 170. The aforementioned software development efficiency evaluation method is applied to the software development efficiency evaluation device 100. This device 100 constructs a function tree and a business tree, and obtains the relationship between product functions and business processes based on the function tree and business tree, thereby calculating the development efficiency of each node. It can achieve fine-grained evaluation of business and product internals to output evaluation recommendations. The first processing module 120, the second processing module 130, the third processing module 150, and the fourth processing module 160 are all central processing units (CPUs). A CPU generally consists of a logic unit, a control unit, and a storage unit. Utilizing a CPU for calculation saves a significant amount of human resources.

[0132] The embodiments described in this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided by the embodiments of this application. As those skilled in the art will know, with the evolution of technology and the emergence of new application scenarios, the technical solutions provided by the embodiments of this application are also applicable to similar technical problems.

[0133] Figure 9This application illustrates a computer device 500 provided in an embodiment of the present application. The computer device 500 may be a server or a terminal, and its internal structure includes, but is not limited to:

[0134] Memory 510 is used to store programs;

[0135] The processor 520 is used to execute the program stored in the memory 510. When the processor 520 executes the program stored in the memory 510, the processor 520 is used to execute the above-mentioned software development efficiency evaluation method.

[0136] The processor 520 and memory 510 can be connected via a bus or other means.

[0137] The memory 510, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs and non-transitory computer-executable programs, such as the software development performance evaluation method described in any embodiment of this application. The processor 520 implements the above-described software development performance evaluation method by running the non-transitory software program and instructions stored in the memory 510.

[0138] The memory 510 may include a program storage area and a data storage area. The program storage area may store the operating system and applications required for at least one function; the data storage area may store the software development performance evaluation methods described above. Furthermore, the memory 510 may include high-speed random access memory and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, the memory 510 may optionally include memory remotely located relative to the processor 520, and these remote memories can be connected to the processor 520 via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.

[0139] The non-transient software program and instructions required to implement the above-described software development performance evaluation method are stored in the memory 510. When executed by one or more processors 520, the software development performance evaluation method provided in any embodiment of this application is executed.

[0140] This application also provides a computer-readable storage medium storing computer-executable instructions for executing the above-described software development performance evaluation method.

[0141] In one embodiment, the storage medium stores computer-executable instructions that are executed by one or more control processors 520, such as one processor 520 in the computer device 500, which can cause the one or more processors 520 to perform the software development performance evaluation method provided in any embodiment of this application.

[0142] The embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.

[0143] The terms “first,” “second,” etc. (if present) in the specification and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms “comprising” and “having,” and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0144] It should be understood that in this application, "at least one (item)" means one or more, and "more than" means two or more. "And / or" is used to describe the relationship between related objects, indicating that three relationships can exist. For example, "A and / or B" can represent three cases: only A exists, only B exists, and both A and B exist simultaneously, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one (item) of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one (item) of a, b, or c can represent: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple.

[0145] It will be understood by those skilled in the art that all or some of the steps and systems in the methods disclosed above can be implemented as software, firmware, hardware, and suitable combinations thereof. Some or all of the physical components can be implemented as software executed by a processor, such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application-specific integrated circuit. Such software can be distributed on a computer-readable medium, which can include computer storage media (or non-transitory media) and communication media (or transient media). As is known to those skilled in the art, the term computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, data structures, program modules, or other data). Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technologies, CD-ROM, digital versatile disc (DVD) or other optical disc storage, magnetic cartridges, magnetic tape, disk storage or other magnetic storage devices, or any other medium that can be used to store desired information and is accessible to a computer. Furthermore, as is known to those skilled in the art, communication media typically include computer-readable instructions, data structures, program modules, or other data in modulated data signals such as carrier waves or other transmission mechanisms, and may include any information delivery medium.

[0146] The foregoing has provided a detailed description of the preferred embodiments of this application. However, this application is not limited to the above-described embodiments. Those skilled in the art can make various equivalent modifications or substitutions without departing from the spirit of this application. All such equivalent modifications or substitutions are included within the scope defined by the claims of this application.

Claims

1. A method for evaluating software development efficiency, characterized in that, include: Obtain the business process and the corresponding product functions; Obtain the overall business process of the aforementioned business process; By taking the entire business as the root node, the entire business is decomposed to obtain the main business; The main business is decomposed into sub-nodes to obtain a single business. The single service is used as the leaf node of the main service to form a service tree; The overall product that acquires the aforementioned product functions; By taking the product as a whole as the root node, the product as a whole is decomposed to obtain the main product functions; The main product function is decomposed into sub-nodes to obtain a single product function. The single product function is used as the leaf node of the main product function to form a function tree; Obtain an initial matrix, in which the value of each element is set to 0, each row of the initial matrix corresponds to a single product function, and each column of the initial matrix corresponds to a single business process; Traverse each of the single product functions in the function tree and match the currently traversed single product function with each of the single business processes in the business tree. If the currently traversed single product function matches the single business process, the element values ​​of the matching single product function and single business process in the initial matrix are set to 1 to obtain the product map. The efficiency of each node in the function tree is calculated based on the product map to obtain the efficiency index corresponding to each node. Traverse the performance indicators corresponding to each node of the function tree to form a function list; Based on the function list, the performance indicators corresponding to values ​​less than the preset indicator values ​​are selected, and evaluation suggestions are output.

2. The method according to claim 1, characterized in that, The step of calculating the performance of each node in the function tree based on the product map to obtain the performance index corresponding to each node includes: By using a depth-first search to traverse each node of the functional tree, and based on the product map, the performance of each node of the functional tree is calculated to obtain the performance index corresponding to each node.

3. The method according to claim 2, characterized in that, Each node of the function tree includes a preset amount of resources consumed and a number of business processes supported. The process involves using a depth-first search to traverse each node of the function tree, calculating the performance of each node based on the product map, and obtaining the performance index corresponding to each node, including: Starting from the root node of the function tree, if the current node is a leaf node, the efficiency index of the leaf node is calculated based on the amount of resources consumed and the number of supported business processes, wherein the number of supported business processes is obtained by traversing the product map. If the current node is a child node, the performance index of the child node is calculated based on the performance index of the leaf node of the child node. The performance index of the root node is calculated based on the performance index of the child nodes and the performance index of the leaf nodes, thus obtaining the performance index corresponding to each node.

4. The method according to claim 1, characterized in that, The step involves filtering out performance indicators that are less than a preset value based on the function list, and outputting evaluation suggestions, including: If the performance indicator is equal to 0, output a suggestion to either integrate more business processes or stop development. If the performance indicator is greater than 0 and less than the preset indicator value, a suggestion is output to integrate more business processes or to split the product functions.

5. A software development efficiency evaluation device, characterized in that, include: The data acquisition module is used to acquire business processes and product functions corresponding to those business processes. The first processing module is used to obtain the overall business process of the business process. The entire business is taken as the root node and decomposed to obtain the main business; the main business is taken as the child node and decomposed to obtain the individual business; the individual business is taken as the leaf node of the main business to form a business tree. The second processing module is used to obtain the overall product functionality of the product. The product as a whole is taken as the root node, and the product as a whole is decomposed to obtain the main product function; the main product function is taken as the child node, and the main product function is decomposed to obtain the individual product function; the individual product function is taken as the leaf node of the main product function to form a function tree. The association module is used to obtain an initial matrix, in which the value of each element is set to 0, each row of the initial matrix corresponds to a single product function, and each column of the initial matrix corresponds to a single business process; it traverses each single product function of the function tree and performs matching processing between the currently traversed single product function and each single business process of the business tree respectively. If the currently traversed single product function matches the single business process, the element values ​​of the matching single product function and single business process in the initial matrix are set to 1 to obtain the product map. The third processing module is used to calculate the performance of each node of the function tree based on the product map, and obtain the performance index corresponding to each node. The fourth processing module is used to traverse the performance indicators corresponding to each node of the function tree to form a function list; The evaluation processing module is used to filter out the performance indicators that are less than a preset indicator value according to the function list, and output evaluation suggestions.

6. A computer device, characterized in that, The computer device includes a memory and a processor, the memory storing computer-readable instructions that, when executed by one or more of the processors, cause the one or more processors to perform the steps of the method as described in any one of claims 1 to 4.

7. A computer-readable storage medium, characterized in that, The storage medium is readable and writable by a processor, and the storage medium stores computer-executable instructions that, when executed by one or more processors, cause one or more processors to perform the steps of the method as described in any one of claims 1 to 4.

Citation Information

Patent Citations

  • Development, operation and maintenance integrated implementation method and platform

    CN114020242A

  • Method and system for valuation of complex systems, in particular for corporate rating and valuation

    US20040133439A1