An agile development management method and system

By predicting the priority of project modules in terms of demand and constructing the project's key roadmap, combined with the convolutional neural network method, the problem of how to generate modules in chronological order in agile development is solved to better meet user needs and improve development efficiency. effect.

CN118446646BActive Publication Date: 2025-01-21广州锦高信息科技有限公司
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202410664855.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-05-27
Publication Date
2025-01-21
Estimated Expiration
2044-05-27

AI Technical Summary

Technical Problem

In the agile development process, how to generate modules in chronological order so that they can better meet user needs and achieve the convenience of software development.

Method used

By obtaining demand types, project modules and project functions, predict the priority of project modules in demand, build a project critical roadmap, and use the convolutional neural network method to combine the predicted user planning map and project critical roadmap to determine project priorities.

Benefits of technology

It realizes the generation of modules in chronological order during the development process, so that it can better meet user needs and improve the efficiency and convenience of software development.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118446646B_ABST
    Figure CN118446646B_ABST
Patent Text Reader

Abstract

The present invention discloses an agile development management method and system. Determine the needs of users, construct a graph of project modules, and obtain the predicted user planning graph. Determine the importance of the function, completion time and interface of the project itself in a software. Use a connection matrix to represent the graph. According to the same rows and columns of the connection matrix, a point in the graph, that is, the characteristics of a project module, is represented, and a convolution method of a network based on the predicted user planning graph and the project key roadmap is designed to obtain the project priority. The convolution method of the network is to perform convolution along the diagonal. Thus, the technical effect of generating project modules in chronological order so that the software can better meet the needs of users and facilitate software development during the development process is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer technology, and in particular to an agile development management method and system. Background Art

[0002] Currently, agile development centers around evolving user needs, employing an iterative, step-by-step approach to software development. Agile development doesn't pursue perfect design or coding upfront, but rather strives to develop a project's core functionality within a very short timeframe. In agile development, software projects are divided into multiple subprojects during the initial development phase. The results of each subproject are tested and proven to be visual, integrable, and operational. In other words, a large project is divided into multiple interconnected yet independently operational smaller projects, which are then completed separately, ensuring the software remains usable throughout the development process. However, ensuring that software modules are generated chronologically during development, ensuring they better meet user needs and maintain self-interconnectedness, remains a key challenge. Summary of the Invention

[0003] The purpose of the present invention is to provide an agile development management method and system to solve the above problems existing in the prior art.

[0004] In a first aspect, an embodiment of the present invention provides an agile development management method, including:

[0005] Obtaining a requirement type, multiple project modules, and corresponding project functions; the requirement type indicates the type of software that the user plans to obtain; the project modules are multiple modules included in a software;

[0006] Based on the demand type, multiple project modules and corresponding project functions, the priority of the project modules in the demand is predicted to obtain a predicted user planning graph; the predicted user planning graph uses an adjacency matrix to represent the connection relationship;

[0007] According to the plurality of project modules and corresponding project functions, the importance of the project modules in a software is determined to obtain a project association set;

[0008] Based on the project's own association set, a graph is constructed to obtain a project key roadmap; the project key roadmap uses an adjacency matrix to represent the connection relationship;

[0009] Based on the predicted user planning map and the project key roadmap, the project priority is obtained.

[0010] Optionally, obtaining the project priority based on the predicted user planning map and the project key roadmap includes:

[0011] The adjacency matrix of the predicted user planning graph is used as the predicted user planning matrix; the adjacency matrix of the project key path graph is used as the project key path matrix;

[0012] Obtain the user's planned convolution kernel and project key kernel;

[0013] Convolving the predicted user planning matrix according to the user planning convolution kernel through the tilted convolution method to extract features and obtain predicted user planning features;

[0014] By using the tilted convolution method, the project critical path matrix is ​​convolved according to the project critical core, features are extracted, and project critical path features are obtained;

[0015] The predicted user planning features and project key path features are input into a fully connected network to predict the project priority and obtain the project priority.

[0016] Optionally, the number of neurons in the output layer of the fully connected network is equal to the product of the number of project priorities and the number of project modules.

[0017] Optionally, the predicted user planning matrix is ​​convolved according to the user planning convolution kernel by using the tilted convolution method to extract features to obtain predicted user planning features, including:

[0018] Obtaining the main diagonal corresponding to the rows and columns of the predicted user planning matrix as the predicted main diagonal;

[0019] According to the predicted main diagonal, the predicted user planning matrix is ​​divided into a predicted upper triangular matrix and a predicted lower triangular matrix; the predicted upper triangular matrix contains the main diagonal, and the predicted lower triangular matrix does not contain the main diagonal;

[0020] Determine the convolution position based on the predicted lower triangular matrix to obtain a first convolution position set;

[0021] Based on the predicted upper triangular matrix, the convolution position is determined to obtain a second convolution position set.

[0022] Obtaining the center point of the user planned convolution kernel on the row and column as the user planned center point;

[0023] sequentially placing the values ​​in the second convolution position set at the end of the first convolution position set to obtain a convolution position set;

[0024] The user planning center point corresponding to the user planning convolution kernel is convolved and moved with a step size of 1 according to the convolution position set each time, and features are extracted to obtain predicted user planning features.

[0025] Optionally, determining the convolution position based on the predicted lower triangular matrix to obtain a first convolution position set includes:

[0026] Obtaining a plurality of diagonals of the predicted lower triangular matrix; the diagonals comprising a plurality of positions in the predicted lower triangular matrix;

[0027] Arranging the diagonals of the predicted lower triangular matrix according to the number of columns from large to small to obtain the arranged diagonals of the predicted lower triangular matrix;

[0028] Sort multiple positions in the diagonal of the arranged predicted lower triangular matrix in order from small to large columns to obtain a first convolution position set.

[0029] Optionally, the step of determining the importance of a project module within a software based on the multiple project modules and corresponding project functions to obtain a project association set includes:

[0030] Constructing a connectivity graph according to the connection relationship of the interfaces between the project modules to obtain a module connectivity graph;

[0031] According to the module connectivity graph, find the number of paths from one project module to other project modules, and obtain the number of project module connectivity;

[0032] If the number of project modules connected is greater than or equal to the connection threshold, the corresponding project module is set as the basic module;

[0033] If the number of project module connections is less than the connection threshold, the corresponding project module is set as a direct module;

[0034] Arrange the basic modules according to the number of project module connections from most to least to obtain a basic module set;

[0035] Arrange the direct modules according to the number of project module connections from most to least to obtain a direct module set;

[0036] The basic module set and the direct module set are added to the project's own associated set.

[0037] Optionally, the step of predicting the priority of the project modules in terms of demand based on the demand type, the plurality of project modules, and the corresponding project functions to obtain a predicted user planning map includes:

[0038] Through the project demand prediction network, according to the demand type and multiple project functions, the matching degree of the project function to the demand type is detected to obtain the project function importance value; the project function importance value represents the importance of the project module in the demand;

[0039] Add the project functions with the same important value of the project function into a project function important set to obtain multiple project function important sets;

[0040] Based on the multiple project function important sets, construct a connection relationship according to the important value of the project function to obtain a predicted project planning diagram.

[0041] Optionally, the constructing a connection relationship according to the important value of the project function based on the multiple project function important sets to obtain a predicted project planning diagram includes:

[0042] Arrange the multiple project function important sets in order from high to low according to the important value of the project function to obtain the i-th arranged project module; the important value of the project function of the i-th project module is greater than that of the i+1-th project module; 0 < i ≤ n; n is the number of project function important sets; <​​​​​​​​​​​​​​​​​​​​​​​​​​​Demand forecasting module: Based on the demand type, multiple project modules and corresponding project functions, it forecasts the priority of project modules in demand and obtains a forecast user planning map; the forecast user planning map uses an adjacency matrix to represent the connection relationship;

[0053] Self-association module: judging the importance of a project module in a software according to the plurality of project modules and corresponding project functions, and obtaining a project self-association set;

[0054] Association graph module: Based on the project's own association set, a graph is constructed to obtain a project key roadmap; the project key roadmap uses an adjacency matrix to represent the connection relationship;

[0055] Prediction module: obtains project priority based on the predicted user planning map and project key roadmap.

[0056] Compared with the prior art, the embodiments of the present invention achieve the following beneficial effects:

[0057] An embodiment of the present invention also provides an agile development management method and system, the method comprising: obtaining a requirement type, multiple project modules and corresponding project functions; the requirement type indicates the type of software that a user plans to obtain; the project modules are multiple modules contained in a software; based on the requirement type, multiple project modules and corresponding project functions, predicting the priority of the project modules in the requirements to obtain a predicted user planning map; the predicted user planning map uses an adjacency matrix to represent the connection relationship; based on the multiple project modules and the corresponding project functions, judging the importance of the project modules in a software to obtain a project association set; based on the project association set, constructing a map to obtain a project critical roadmap; the project critical roadmap uses an adjacency matrix to represent the connection relationship; based on the predicted user planning map and the project critical roadmap, obtaining the project priority.

[0058] The present invention determines user needs, constructs a graph of project modules, and obtains the predicted user planning graph. It also determines the importance of the project's functions, completion time, and interfaces within the software. The graph is represented by a connection matrix. The same rows and columns of the connection matrix represent the characteristics of a point in the graph, i.e., a project module. A convolution method for a network based on the predicted user planning graph and the project's critical roadmap is designed to obtain project priorities. The network convolution method is performed along diagonal lines. This results in the technical effect of generating project modules in chronological order, enabling the software to better meet user needs and facilitate software development during development. BRIEF DESCRIPTION OF THE DRAWINGS

[0059] Figure 1 This is a flow chart of an agile development management method provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0060] The present invention will be described in detail below with reference to the accompanying drawings.

[0061] Example 1

[0062] like Figure 1 As shown, an embodiment of the present invention provides an agile development management method, the method comprising:

[0063] S101: Obtain a requirement type, multiple project modules and corresponding project functions; the requirement type indicates the type of software that the user plans to obtain; the project modules are multiple modules included in a software.

[0064] The software is software that can meet user needs.

[0065] S102: Based on the demand type, multiple project modules and corresponding project functions, predict the priority of the project modules in the demand, and obtain a predicted user planning graph; the predicted user planning graph uses an adjacency matrix to represent the connection relationship;

[0066] The predicted user planning graph is G1=(V1, E1), V1 represents a point of the predicted user planning graph, and E1 represents an edge of the predicted user planning graph.

[0067] The predicted user planning diagram represents the ranking of project modules based on user needs.

[0068] S103: judging the importance of the project modules within a software according to the plurality of project modules and corresponding project functions, and obtaining a project association set;

[0069] S104: Based on the project's own association set, a graph is constructed to obtain a project key roadmap.

[0070] The project critical roadmap is G2=(V2, E2), V2 represents a point of the project critical roadmap, and E2 represents an edge of the project critical roadmap.

[0071] The project key roadmap represents the order of project modules in their own construction. For example, in this embodiment, the database module should be at the starting point of the project key roadmap, and the interaction module should be at the end point of the project key roadmap.

[0072] S105: Obtaining project priority based on the predicted user planning map and the project key roadmap.

[0073] The project priority indicates the order in which project modules are developed. For example, in this embodiment, there are five project modules, and the project priorities of the project modules are divided into levels 1, 2, 3, 4, and 5. A project priority of 1 indicates the first module to be developed first, and a project priority of 1 indicates the second module to be developed in addition to the first module that has already been developed.

[0074] Optionally, obtaining the project priority based on the predicted user planning map and the project key roadmap includes:

[0075] The adjacency matrix of the predicted user planning graph is used as the predicted user planning matrix; the adjacency matrix of the project key path graph is used as the project key path matrix.

[0076] Obtain the user's planned convolution kernel and project key kernel;

[0077] Among them, the user planning convolution kernel and the project key kernel are both two-dimensional convolution kernels; in this embodiment, the size of the user planning convolution kernel is a 2x2 two-dimensional convolution kernel, and the size of the project key kernel is a 2x2 two-dimensional convolution kernel.

[0078] Convolving the predicted user planning matrix according to the user planning convolution kernel through the tilted convolution method to extract features and obtain predicted user planning features;

[0079] Among them, the features of the predicted user planning matrix are extracted.

[0080] By using the tilted convolution method, the project critical path matrix is ​​convolved according to the project critical core, and features are extracted to obtain project critical path features.

[0081] Among them, the characteristics of the project critical path matrix are extracted.

[0082] The project critical path matrix and the predicted user planning matrix are convolved using the same method, which is a tilted convolution method.

[0083] The predicted user planning features and project key path features are input into a fully connected network to predict the project priority and obtain the project priority.

[0084] The fully connected network is a fully connected neural network (FCN).

[0085] Optionally, the number of neurons in the output layer of the fully connected network is equal to the product of the number of project priorities and the number of project modules.

[0086] Optionally, the predicted user planning matrix is ​​convolved according to the user planning convolution kernel by using the tilted convolution method to extract features to obtain predicted user planning features, including:

[0087] Obtain the main diagonals corresponding to the rows and columns of the predicted user planning matrix as the predicted main diagonals.

[0088] Among them, the main diagonal corresponding to the rows and columns of the predicted user planning matrix can divide the predicted user planning matrix into two equal right-angled triangle areas on the plane of the rows and columns. If the predicted user planning matrix is ​​a matrix of size 3x3, then the main diagonal of the predicted user planning matrix is ​​the 1st row and 1st column, the 2nd row and 2nd column, and the 3rd row and 3rd column as the main diagonal.

[0089] According to the predicted main diagonal, the predicted user planning matrix is ​​divided into a predicted upper triangular matrix and a predicted lower triangular matrix; the predicted upper triangular matrix contains the main diagonal, and the predicted lower triangular matrix does not contain the main diagonal.

[0090] Among them, the part of the predicted user planning matrix above the predicted main diagonal and including the main diagonal is the predicted upper triangular matrix, and the part of the predicted user planning matrix above the predicted main diagonal is the predicted lower triangular matrix.

[0091] For example, if the size of the predicted user planning matrix is ​​3x3, the predicted lower triangular matrix includes the values ​​of (1,1), (2,2), (3,3), (2,1), (3,2), (3,1). The predicted upper triangular matrix includes the values ​​of (2,1), (3,2), (3,1).

[0092] Determine the convolution position based on the predicted lower triangular matrix to obtain a first convolution position set;

[0093] The first convolution position set is a set obtained by arranging the order of convolution.

[0094] Based on the predicted upper triangular matrix, the convolution position is determined to obtain a second convolution position set.

[0095] The method for obtaining the second convolution position set is the same as the method for obtaining the first convolution position set.

[0096] Obtaining the center point of the user planned convolution kernel on the row and column as the user planned center point;

[0097] The user-planned center point is rounded down. For example, if the user-planned convolution kernel size is 2x2, the user-planned center point is the position corresponding to 1x1.

[0098] sequentially placing the values ​​in the second convolution position set at the end of the first convolution position set to obtain a convolution position set;

[0099] For example, if the size of the predicted user planning matrix is ​​3x3, then the convolution position set is (1,1), (2,2), (3,3), (2,1), (3,2), (3,1), (2,1), (3,2), (3,1), and the corresponding values ​​are the row and column positions of the predicted user planning matrix. For example, (1,1) indicates the first row and first column position of the predicted user planning matrix.

[0100] The user planning center point corresponding to the user planning convolution kernel is convolved and moved with a step size of 1 according to the convolution position set, and features are extracted to obtain predicted user planning features.

[0101] If the row and column corresponding to the user plan center point are (1, 1), the position of the first row and first column of the user plan center point is convolved with the position of the first row and first column of the predicted user plan matrix. To facilitate the convolution, multiple zero padding values ​​are added around the convolution. However, during matching, the number of rows and columns corresponding to the unpadded predicted user plan matrix is ​​used for matching.

[0102] Optionally, determining the convolution position based on the predicted lower triangular matrix to obtain a first convolution position set includes:

[0103] A plurality of diagonals of the predicted lower triangular matrix are obtained; the diagonals include a plurality of positions in the predicted lower triangular matrix.

[0104] Among them, if the predicted lower triangular matrix includes the values ​​of (1,1), (2,2), (3,3), (2,1), (3,2), (3,1), then (1,1), (2,2), (3,3) constitute the first diagonal, (2,1), (3,2) constitute the second diagonal, and (3,1) is a point constituting the third diagonal.

[0105] The diagonals of the predicted lower triangular matrix are arranged according to the number of columns from large to small to obtain the arranged diagonals of the predicted lower triangular matrix.

[0106] For example, the number of columns of the first diagonal line (1,1), (2,2), (3,3) is 3, the number of columns of the second diagonal line (2,1), (3,2) is 2, and the number of columns of the third diagonal line (3,1) is 1.

[0107] Arrange the predicted diagonals of the lower triangular matrix to be {first diagonal, second diagonal, third diagonal}, that is, {(1,1),(2,2),(3,3),(2,1),(3,2)(3,1)}. Because the arrangement of each diagonal is unknown, the situation of {(1,1),(3,3),(2,2),(2,1),(3,2)(3,1)} may also appear.

[0108] Sort multiple positions in the diagonal of the arranged predicted lower triangular matrix in order from small to large columns to obtain a first convolution position set.

[0109] For example, the column of the first diagonal (1,1) is 1, the column of (2,2) is 2, and the column of (3,3) is 3. Then the first diagonal is arranged as {(1,1), (2,2), (3,3)}, the second diagonal is arranged as {(2,1), (3,2)}, and the third diagonal is arranged as (3,1). According to the arrangement, the diagonals of the predicted lower triangular matrix are {first diagonal, second diagonal, third diagonal}, so the first convolution position set is {(1,1), (2,2), (3,3), (2,1), (3,2)(3,1)}.

[0110] Optionally, obtaining project-related information based on the multiple project modules and corresponding project functions includes:

[0111] Constructing a connectivity graph according to the connection relationship of the interfaces between the project modules to obtain a module connectivity graph;

[0112] Wherein, the module connectivity diagram represents the data transmission mode between project modules;

[0113] Wherein, the module connectivity graph is a unidirectional connectivity graph.

[0114] According to the module connectivity graph, find the number of paths from one project module to other project modules, and obtain the number of project module connectivity;

[0115] In this embodiment, there are five project modules: Project 1, Project 2, Project 3, Project 4, and Project 5. If one project module is Project 1, then the corresponding other project modules are Project 2, Project 3, Project 4, and Project 5. Furthermore, Project 1 is connected to Project 2, Project 3, Project 4, and Project 5. The number of paths in Project 1 is four, and the number of connected project modules is four.

[0116] If the number of connections of the project modules is greater than or equal to the connection threshold, the corresponding project module is set as the basic module.

[0117] Among them, in this embodiment, the connection threshold is 4, and the first project module is the basic module.

[0118] If the number of connected project modules is less than the connection threshold, the corresponding project module is set as a direct module;

[0119] Arrange the basic modules in descending order according to the number of connected project modules to obtain a basic module set;

[0120] Arrange the direct modules in descending order according to the number of connected project modules to obtain a direct module set;

[0121] Add the basic module set and the direct module set to the project self - associated set.

[0122] Optionally, predicting the priority of project modules in terms of requirements based on the requirement type, multiple project modules, and corresponding project functions to obtain a predicted user plan diagram includes:

[0123] Through a project requirement prediction network, according to the requirement type and multiple project functions, detect the matching degree of project functions to the requirement type to obtain a project function importance value; the project function importance value represents the importance of the project module in terms of requirements;

[0124] Among them, in this embodiment, the project requirement prediction network is a fully - connected neural network (FCN).

[0125] Among them, the output neuron of the project requirement prediction network is 5, indicating that the project function importance values are 1, 2, 3, 4, and 5 levels respectively.

[0126] Add project functions with the same project function importance value to a project function importance set to obtain multiple project function importance sets;

[0127] Based on the multiple project function importance sets, construct a connection relationship according to the project function importance value to obtain a predicted project plan diagram.

[0128] Optionally, constructing a connection relationship according to the project function importance value based on the multiple project function importance sets to obtain a predicted project plan diagram includes:

[0129] Arrange the multiple project function importance sets in descending order according to the project function importance value to obtain the i - th arranged project module; the project function importance value of the i - th project module is greater than that of the (i + 1) - th project module; 0 < i ≤ n; n is the number of project function importance sets;

[0130] Wherein, i is a natural number. For example, if n is 3, the plurality of project function importance sets are arranged in order from high to low according to the project function importance values ​​to obtain the first arrangement project module, the second arrangement project module and the third arrangement project module.

[0131] Connect one of the project modules in the i-th project function important set with each project module of each project corresponding to the i+1-th project function important set to obtain a forecast project planning map.

[0132] The connection method is to construct an adjacency matrix to represent the connectivity relationship of the forecast project planning graph.

[0133] Optionally, constructing a graph based on the project's own association set to obtain a project key roadmap includes:

[0134] Obtaining multiple project completion time lengths; the project completion time lengths represent the time length for completing a usable project module;

[0135] Arrange the project modules from longest to shortest according to the corresponding project completion time to obtain a time project module arrangement set;

[0136] The time project module arrangement set is input into the association detection network according to the project's own association information to obtain the self-association importance value.

[0137] In this embodiment, the association detection network is a fully connected neural network (FCN).

[0138] Put the project modules with the same self-associated importance value into a set to obtain multiple project self-sets;

[0139] Adjustments are made based on the collection of the multiple projects themselves to obtain a key project roadmap.

[0140] Among them, the method of adjusting according to the multiple project sets to obtain the project key roadmap is the same as the method of constructing a connection relationship based on the multiple project function importance sets and the project function importance values ​​to obtain the forecast project planning map.

[0141] Example 2

[0142] Based on the above-mentioned agile development management method, an embodiment of the present invention further provides an agile development management system, which includes an acquisition module, a demand forecasting module, a self-association module, and an association graph module.

[0143] The acquisition module is used to obtain the requirement type, multiple project modules and corresponding project functions; the requirement type represents the type of software usage that the user plans to obtain; the project modules are multiple modules included in a software;

[0144] The demand forecasting module is used to forecast the priority of the project modules in terms of demand based on the demand type, multiple project modules and corresponding project functions, and obtain a forecast user planning map; the forecast user planning map uses an adjacency matrix to represent the connection relationship;

[0145] The self-association module is used to determine the importance of a project module in a software according to the multiple project modules and the corresponding project functions, and obtain a project self-association set;

[0146] The association graph module is used to construct a graph based on the project's own association set to obtain a project key roadmap; the project key roadmap uses an adjacency matrix to represent the connection relationship;

[0147] The prediction module is used to obtain the project priority based on the predicted user planning map and the project key roadmap.

[0148] An embodiment of the present invention further provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of any of the aforementioned agile development management methods and the data involved.

[0149] The algorithm and display provided herein are not inherently related to any particular computer, virtual system or other device. Various general-purpose systems can also be used together with the teachings based on this. According to the above description, it is obvious that the structure required for constructing this type of system. In addition, the present invention is not directed to any specific programming language. It should be understood that various programming languages ​​can be utilized to realize the content of the present invention described herein, and the above description of specific languages ​​is for the purpose of disclosing the best mode of the present invention.

[0150] In the description provided herein, numerous specific details are described. However, it is understood that embodiments of the present invention may be practiced without these specific details. In some instances, well-known methods, structures, and techniques are not shown in detail so as not to obscure the understanding of this description.

[0151] Similarly, it should be understood that in order to streamline the present disclosure and aid in understanding one or more of the various inventive aspects, in the above description of exemplary embodiments of the invention, various features of the invention are sometimes grouped together into a single embodiment, figure, or description thereof. However, this disclosed method should not be interpreted as reflecting an intention that the claimed invention requires more features than are expressly recited in each claim. Rather, as reflected in the claims below, inventive aspects lie in less than all the features of the individual embodiments disclosed above. Accordingly, the claims following the detailed description are hereby expressly incorporated into this detailed description, with each claim standing on its own as a separate embodiment of the invention.

[0152] Those skilled in the art will appreciate that the modules in the devices in the embodiments may be adaptively changed and arranged in one or more devices different from the embodiments. The modules or units or components in the embodiments may be combined into one module or unit or component, and in addition may be divided into multiple submodules or subunits or subcomponents. All features disclosed in this specification (including the accompanying claims, abstracts and drawings) and all processes or units of any method or device disclosed herein may be combined in any combination, except that at least some of such features and / or processes or units are mutually exclusive. Unless expressly stated otherwise, each feature disclosed in this specification (including the accompanying claims, abstracts and drawings) may be replaced by an alternative feature providing the same, equivalent or similar purpose.

[0153] Furthermore, those skilled in the art will appreciate that although some embodiments herein include certain features included in other embodiments but not other features, combinations of features from different embodiments are intended to be within the scope of the present invention and to form different embodiments. For example, in the claims below, any of the claimed embodiments may be used in any combination.

[0154] The various component embodiments of the present invention can be implemented in hardware, or in software modules running on one or more processors, or in a combination thereof. It will be appreciated by those skilled in the art that a microprocessor or digital signal processor (DSP) can be used in practice to implement some or all of the functions of some or all of the components in the apparatus according to an embodiment of the present invention. The present invention can also be implemented as a device or device program (e.g., a computer program and a computer program project) for executing a part or all of the methods described herein. Such a program implementing the present invention can be stored on a computer-readable medium, or can have the form of one or more signals. Such a signal can be downloaded from an Internet website, or provided on a carrier signal, or provided in any other form.

[0155] It should be noted that the above embodiments illustrate rather than limit the invention, and that those skilled in the art may devise alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between brackets should not be construed as limiting the claims. The word "comprising" does not exclude the presence of elements or steps not listed in the claims. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The present invention may be implemented by means of hardware comprising several different elements and by means of appropriately programmed computers. In a unit claim enumerating several means, several of these means may be embodied by the same item of hardware. The use of the words first, second, and third etc. does not indicate any order. These words may be interpreted as names.

Claims

1. An agile development management method, characterized in that: include: Obtaining a requirement type, a plurality of project modules and corresponding project functions; the requirement type indicates the type of software usage that the user plans to obtain; the project module is a plurality of modules included in a software; Based on the demand type, multiple project modules and corresponding project functions, the priority of the project modules on the demand is predicted to obtain a predicted user planning graph; the predicted user planning graph uses an adjacency matrix to represent the connection relationship; The step of predicting the priority of the project modules on the demand based on the demand type, the plurality of project modules and the corresponding project functions, and obtaining a predicted user planning diagram includes: Through the project demand prediction network, according to the demand type and multiple project functions, the matching degree of the project function to the demand type is detected to obtain the project function importance value; the project function importance value indicates the importance of the project module in terms of demand; Adding the project functions with the same project function importance value into a project function importance set to obtain multiple project function importance sets; Based on the plurality of project function importance sets, a connection relationship is constructed according to the project function importance values ​​to obtain a predicted user planning graph; According to the plurality of project modules and corresponding project functions, the importance of the project modules in a software is determined to obtain a project association set; The step of determining the importance of a project module in a software according to the plurality of project modules and the corresponding project functions, and obtaining a project association set, includes: According to the connection relationship of the interfaces between the project modules, a connectivity graph is constructed to obtain a module connectivity graph; According to the module connectivity graph, find the number of paths from one project module to other project modules, and obtain the number of project module connectivity; If the number of connections of the project modules is greater than or equal to the connection threshold, the corresponding project module is set as the basic module; If the number of connections of the project modules is less than the connection threshold, the corresponding project module is set as a direct module; Arrange the basic modules from most to least according to the number of project module connections to obtain a basic module set; Arrange the direct modules from most to least according to the number of project module connections to obtain a direct module set; Adding the basic module set and the direct module set to the project's own associated set; Based on the project's own association set, a graph is constructed to obtain a key roadmap of the project; the key roadmap of the project uses an adjacency matrix to represent the connection relationship; The step of constructing a graph based on the project's own associated set to obtain a key roadmap for the project includes: Obtaining multiple project completion time lengths; the project completion time length indicates the time length to complete a usable project module; Arrange the project modules from long to short according to the corresponding project completion time lengths to obtain a time project module arrangement set; Input the time project module arrangement set into the association detection network according to the project's own association information to obtain its own association importance value; Put the project modules with the same self-associated importance value into a set to obtain multiple project self-sets; According to the plurality of project sets, adjustments are made to obtain a key project roadmap; Based on the predicted user planning map and the project key roadmap, obtaining project priorities; The project priority is obtained based on the predicted user planning map and the project key roadmap, including: The adjacency matrix of the predicted user planning graph is used as the predicted user planning matrix; the adjacency matrix of the project key path graph is used as the project key path matrix; Obtain the user's planned convolution kernel and project key kernel; By using a tilted convolution method, the predicted user planning matrix is ​​convolved according to the user planning convolution kernel to extract features and obtain predicted user planning features; By using the tilted convolution method, the project key path matrix is ​​convolved according to the project key core, features are extracted, and project key path features are obtained; The predicted user planning features and project key path features are input into a fully connected network to predict the project priority and obtain the project priority.

2. An agile development management method according to claim 1, characterized in that: The number of neurons in the output layer of the fully connected network is equal to the product of the number of project priorities and the number of project modules.

3. The agile development management method according to claim 1, characterized in that: The method of convolving the predicted user planning matrix according to the user planning convolution kernel by the tilted convolution method to extract features and obtain predicted user planning features includes: Obtaining the main diagonal corresponding to the rows and columns of the predicted user planning matrix as the predicted main diagonal; According to the predicted main diagonal, the predicted user planning matrix is ​​divided into a predicted upper triangular matrix and a predicted lower triangular matrix; the predicted upper triangular matrix contains the main diagonal, and the predicted lower triangular matrix does not contain the main diagonal; Based on the predicted lower triangular matrix, determine the convolution position to obtain a first convolution position set; Based on the predicted upper triangular matrix, the convolution position is determined to obtain a second convolution position set. Obtaining the center point of the user planned convolution kernel on the row and column as the user planned center point; Putting the values ​​in the second convolution position set at the end of the first convolution position set in sequence to obtain a convolution position set; The user planning center point corresponding to the user planning convolution kernel is convolved and moved with a step size of 1 according to the convolution position set each time, and features are extracted to obtain predicted user planning features.

4. An agile development management method according to claim 3, characterized in that: The step of determining the convolution position based on the predicted lower triangular matrix to obtain a first convolution position set includes: Obtaining a plurality of diagonal lines of the predicted lower triangular matrix; the diagonal lines comprising a plurality of positions in the predicted lower triangular matrix; Arranging the diagonals of the predicted lower triangular matrix according to the number of columns from large to small to obtain the arranged diagonals of the predicted lower triangular matrix; Sort multiple positions in the diagonal of the arranged predicted lower triangular matrix from small to large columns to obtain a first convolution position set.

5. The agile development management method according to claim 1, characterized in that: The step of constructing a connection relationship based on the plurality of project function importance sets according to project function importance values ​​to obtain a predicted user planning graph includes: Arrange the plurality of project function importance sets in order from high to low according to the project function importance values ​​to obtain an i-th arranged project module; the project function importance value of the i-th project module is greater than the project function importance value of the i+1-th project module; One of the project modules in the i-th project function important set is connected with each project module corresponding to the i+1-th project function important set to obtain a predicted user planning map.

6. An agile development management system, characterized in that: include: Acquisition module: obtains the requirement type, multiple project modules and corresponding project functions; the requirement type indicates the type of software usage that the user plans to obtain; the project module is multiple modules included in one software; Demand prediction module: based on the demand type, multiple project modules and corresponding project functions, predict the priority of the project modules in demand and obtain a predicted user planning map; the predicted user planning map uses an adjacency matrix to represent the connection relationship; The step of predicting the priority of the project modules on the demand based on the demand type, the plurality of project modules and the corresponding project functions, and obtaining a predicted user planning diagram includes: Through the project demand prediction network, according to the demand type and multiple project functions, the matching degree of the project function to the demand type is detected to obtain the project function importance value; the project function importance value indicates the importance of the project module in terms of demand; Adding the project functions with the same project function importance value into a project function importance set to obtain multiple project function importance sets; Based on the plurality of project function importance sets, a connection relationship is constructed according to the project function importance values ​​to obtain a predicted user planning graph; Self-association module: according to the plurality of project modules and the corresponding project functions, the importance of the project modules in a software is determined to obtain a project self-association set; The step of determining the importance of a project module in a software according to the plurality of project modules and the corresponding project functions, and obtaining a project association set, includes: According to the connection relationship of the interfaces between the project modules, a connectivity graph is constructed to obtain a module connectivity graph; According to the module connectivity graph, find the number of paths from one project module to other project modules, and obtain the number of project module connectivity; If the number of connections of the project modules is greater than or equal to the connection threshold, the corresponding project module is set as the basic module; If the number of connections of the project modules is less than the connection threshold, the corresponding project module is set as a direct module; Arrange the basic modules from most to least according to the number of project module connections to obtain a basic module set; Arrange the direct modules from most to least according to the number of project module connections to obtain a direct module set; Adding the basic module set and the direct module set to the project's own associated set; Association graph module: based on the association set of the project itself, a graph is constructed to obtain a key roadmap of the project; the key roadmap of the project uses an adjacency matrix to represent the connection relationship; The step of constructing a graph based on the project's own associated set to obtain a key roadmap for the project includes: Obtaining multiple project completion time lengths; the project completion time length indicates the time length to complete a usable project module; Arrange the project modules from long to short according to the corresponding project completion time lengths to obtain a time project module arrangement set; Input the time project module arrangement set into the association detection network according to the project's own association information to obtain its own association importance value; Put the project modules with the same self-associated importance value into a set to obtain multiple project self-sets; According to the plurality of project sets, adjustments are made to obtain a key project roadmap; Prediction module: obtains project priority based on the predicted user planning map and project key roadmap; The project priority is obtained based on the predicted user planning map and the project key roadmap, including: The adjacency matrix of the predicted user planning graph is used as the predicted user planning matrix; the adjacency matrix of the project key path graph is used as the project key path matrix; Obtain the user's planned convolution kernel and project key kernel; By using a tilted convolution method, the predicted user planning matrix is ​​convolved according to the user planning convolution kernel to extract features and obtain predicted user planning features; By using the tilted convolution method, the project key path matrix is ​​convolved according to the project key core, features are extracted, and project key path features are obtained; The predicted user planning features and project key path features are input into a fully connected network to predict the project priority and obtain the project priority.

Citation Information

Patent Citations

  • CNN-LSTM developer project recommendation method

    CN111459927A