Method of risk identification based on software project management

By dividing software projects into modules and analyzing module correlation using knowledge graphs and cosine similarity algorithms, the problem of inaccurate analysis of customer needs on software projects in the existing technology is solved, and the accurate identification and adjustment of progress risks is achieved.

CN118644084BActive Publication Date: 2024-12-13NANGJING MUZE INFORMATION TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411103560.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-08-13
Publication Date
2024-12-13
Estimated Expiration
2044-08-13

AI Technical Summary

Technical Problem

The existing project management system cannot accurately analyze the risk impact of customer needs on the progress of software projects, making it difficult to formulate effective risk adjustment measures.

Method used

By dividing the software project into multiple module projects, and using the knowledge graph and cosine similarity algorithm, we analyze the correlation between the core adjustment module and the passive adjustment module, calculate the core risk value and the connection impact value, and determine the risk level of the software project , so as to identify and adjust progress risks in a timely manner.

Benefits of technology

Accurate analysis of the progress risks of software projects and judgment of risk levels is achieved, which facilitates the formulation of corresponding risk adjustment measures to ensure the stability of project progress.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118644084B_ABST
    Figure CN118644084B_ABST
Patent Text Reader

Abstract

The present invention discloses a method based on software project management risk identification, which relates to the technical field of software project management. The method divides various software module projects in a software project, and when a software module project receives an adjustment demand from a customer, performs an in-depth analysis on the progress of each software module project, promptly determines whether the software module project has a progress risk, and when the software module project has a progress risk, accurately analyzes the risk level of the entire software project through the correlation between the software modules, accurately understands the progress risk of the entire software project brought by customer demand, and facilitates the subsequent formulation of corresponding risk adjustment measures.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of software project management, and more particularly to a method for identifying risks in software project management. Background Art

[0002] The management of software projects is oriented towards software engineering. The overall process of software engineering includes the design of each software module, the coding of each software module, the independent testing of each software module, and finally the connection testing of each software module. Therefore, the project management of each software module is particularly important. There are various risks in each process of the entire software engineering, such as budget risk, technical risk, customer demand risk, etc. Among them, customer demand risk is the most difficult risk to control. Customers may put forward new requirements at any stage of the project. At this time, the corresponding software modules need to adjust the corresponding functions, which will delay the progress of the entire software project. The current project management system can identify customer demand risks, but it cannot accurately analyze the progress risks brought by customer demand to the entire software project, and it is not convenient to formulate corresponding risk adjustment measures for the entire software project. Summary of the invention

[0003] In view of the deficiencies in the prior art, the present invention aims to provide a method for risk identification based on software project management.

[0004] To achieve the above object, the present invention provides the following technical solutions:

[0005] The method based on software project management risk identification includes the following steps:

[0006] Step 1: After the software project starts, divide the software project into multiple software module projects according to each software module;

[0007] Step 2: When the customer sends an adjustment request to the project specialist of the software module project, the software module that the software module project is responsible for is marked as the core adjustment module, the knowledge graph between the software modules is obtained, and other software modules that have a relationship with the core adjustment module are marked as passive adjustment modules, and the adjustment request is simultaneously sent to the project specialist of the passive adjustment module project;

[0008] Step 3: After the project specialists of the core adjustment module project and the passive adjustment module project have received the demand adjustment request, module project progress records of the core adjustment module project and the passive adjustment module project are generated every t time, and according to the comparison result between the core risk value of the core adjustment module project and its threshold value, it is determined whether to mark the core adjustment module project as a core risk module project;

[0009] Step 4: When a core adjustment module project is marked as a core risk module project, the corresponding passive adjustment module project is marked as a passive risk module project;

[0010] Step 5: Determine the risk level of the software project.

[0011] Furthermore, the module project progress record includes the module project name, module project progress, and recording time.

[0012] Furthermore, based on the comparison result between the core risk value of the core adjustment module project and its threshold, determine whether to mark the core adjustment module project as a core risk module project, specifically: obtain the core risk value of the core adjustment module project, set the core risk threshold, when the core risk value is less than the core risk threshold, do not do corresponding processing, when the core risk value is greater than or equal to the core risk threshold, mark the core adjustment module project as a core risk module project.

[0013] Furthermore, the core risk value of the core adjustment module project is obtained in the following way: obtain all module project progress records of the core adjustment module project, set the module project progress of each module project progress record to correspond to an expected module project progress, when the module project progress is greater than or equal to the expected module project progress, do not do corresponding processing, when the module project progress is less than the expected module project progress, calculate the difference between the expected module project change progress and the module project change progress to obtain the delayed progress, and mark the module project progress record as a delayed progress record, sort all delayed progress records in the order of recording time, calculate the time difference between the recording times of two adjacent delayed progress records after sorting, obtain the delayed interval, sum up all delay intervals and take the average to obtain the average delay interval, and mark it as TZY, sum up all delay progress and take the average to obtain the average delay progress, and mark it as JDP, and use the formula The core risk value HXF of the core adjustment module project is obtained, where a1 is the average delay interval coefficient and a2 is the average delay progress coefficient.

[0014] Further, when the core adjustment module project is marked as a core risk module project, the corresponding passive adjustment module project is marked as a passive risk module project, specifically: the total number of progress fluctuations and the total number of progress delays of the core risk module project are obtained and marked as , x 1 is the total number of schedule fluctuations of the core risk module project, x 2 The total number of progress delays for the core risk module project is obtained, and the total number of progress fluctuations and the total number of progress delays for the passive adjustment module project are obtained and marked as ,y 1 is the total number of schedule fluctuations of the passive adjustment module project, y 2The total number of progress delays of the passive adjustment module projects is calculated. The cosine similarity algorithm is used to obtain the connection impact value between the core risk module projects and the passive adjustment module projects. A connection impact threshold is set. When the connection impact value is greater than or equal to the connection impact threshold, the passive adjustment module project is marked as a passive risk module project. When the connection impact value is less than the connection impact threshold, no corresponding processing is performed.

[0015] Furthermore, the total number of progress fluctuations is obtained in the following manner: obtain all module project progress records of the same module project after receiving the demand adjustment request, sort all module project progress records in chronological order of record time, calculate the difference between the module project progress of two adjacent module project progress records after sorting, obtain the module project change progress, set the expected project change progress, when the module project change progress is greater than or equal to the expected project change progress, do not perform corresponding processing, when the module project change progress is less than the expected project change progress, increase the number of progress fluctuations by one, sum up all the progress fluctuation times of the module project, and obtain the total number of progress fluctuations.

[0016] Furthermore, the total number of progress delays is obtained in the following manner: obtain all module project progress records of the core adjustment module project, set the module project progress of each module project progress record to correspond to an expected module project progress, when the module project progress is greater than or equal to the expected module project progress, do not perform corresponding processing, when the module project progress is less than the expected module project progress, increase the number of progress delays by one, sum up all the progress delays of the module projects, and obtain the total number of progress delays.

[0017] Further, the risk level of the software project is determined, specifically as follows: a risk level value Si of the software project is obtained, and a range of each risk level value Si corresponds to a risk level, wherein the range of the risk level value Si includes (0, S1], (S1, S2], …, (Si-1, Si], and the risk levels include risk level 1, risk level 2, …, risk level i-1, and risk level i. The higher the risk level, the greater the schedule risk of the software project.

[0018] Furthermore, the risk level value Si of the software project is obtained by marking the total number of passive risk module projects as SGA, marking the total number of passive adjustment module projects as CUK, and using the formula The risk level value Si of the software project is obtained, where b1 is the core risk value coefficient and b2 is the project quantity coefficient.

[0019] Compared with the prior art, the present invention has the following beneficial effects:

[0020] The method of the present invention divides the software module projects in the software project, and when the software module project receives the adjustment requirements of the customer, performs an in-depth analysis on the progress of each software module project, promptly determines whether the software module project has a progress risk, and when the software module project has a progress risk, accurately analyzes the risk level of the entire software project through the correlation between the software modules, accurately understands the progress risk of the entire software project brought by the customer's requirements, and facilitates the subsequent formulation of corresponding risk adjustment measures. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] Figure 1 A flowchart for the software project management risk identification method;

[0022] Figure 2 A flowchart for marking the passive risk module project. DETAILED DESCRIPTION

[0023] Reference Figure 1 to Figure 2

[0024] The method based on software project management risk identification includes the following steps:

[0025] Step 1: After the software project starts, divide the software project into multiple software module projects according to each software module (for example, if the software project includes the research and development of the above five modules, namely, business scheduling module, user information management module, business mining module, data collection module and data cleaning module, it needs to be divided into business scheduling module project, user information management module project, business mining module project, data collection module project and data cleaning module project);

[0026] During the management of software projects, the project team needs to arrange different project specialists to be responsible for the design, coding and testing of different software modules. In order to ensure that each software module can perform connection function testing simultaneously, the project progress of each software module needs to be kept consistent.

[0027] Step 2: When the customer sends an adjustment request to the project specialist of the software module project (for example, when the customer needs to adjust the function of the data cleaning module, the customer will send a demand adjustment request to the project specialist of the software module project. The project specialist of the software module project needs to adjust the module function according to the customer's needs. The entire adjustment process will greatly affect the progress of the software module project. At the same time, the functions of the remaining software modules associated with the software module must also be adjusted accordingly. The project specialist of the software module project will send the adjustment requirements to the project specialists of the remaining associated software module projects to ensure that the connection and function of each module are normal in the end, so the progress of the associated software module projects will also be affected to a certain extent), the software module that the software module project is responsible for is marked as a core adjustment module, the knowledge graph between the software modules is obtained, and the other software modules that have a relationship with the core adjustment module are marked as passive adjustment modules, and the adjustment request is sent to the project specialist of the passive adjustment module project at the same time (because the adjustment is to the function of the core adjustment module, which will mainly affect the progress of the core adjustment module project. The degree of impact on the progress of the passive adjustment module is related to the connection function that actually needs to be adjusted);

[0028] Each software module is represented in the form of a knowledge graph. For example, the relationships in the knowledge graph represent the associations between software modules, such as functional relationships, signal transmission relationships, etc., to ensure that the knowledge graph can accurately reflect the relationships between software modules.

[0029] Step 3: After the project specialists of the core adjustment module project and the passive adjustment module project receive the demand adjustment request, module project progress records of the core adjustment module project and the passive adjustment module project are generated every t time. The module project progress records include module project name, module project progress, and recording time;

[0030] Get the core risk value of the core adjustment module project and set the core risk threshold. The core risk threshold is the system setting threshold and can be modified according to actual needs. When the core risk value is less than the core risk threshold, no corresponding processing is performed;

[0031] When the core risk value is greater than or equal to the core risk threshold, the core adjustment module project is marked as a core risk module project;

[0032] The core risk value of the core adjustment module project is obtained in the following way: obtain all module project progress records of the core adjustment module project, set the module project progress of each module project progress record to correspond to an expected module project progress (the expected module project progress is the system preset progress, which can be modified according to actual needs), when the module project progress is greater than or equal to the expected module project progress, no corresponding processing is performed, when the module project progress is less than the expected module project progress, the difference between the expected module project change progress and the module project change progress is calculated to obtain the delayed progress, and the module project progress record is marked as a delayed progress record, all delayed progress records are sorted in order of recording time, the time difference between the recording times of the two adjacent delayed progress records after sorting is calculated to obtain the delayed interval, all delayed intervals are summed up and averaged to obtain the average delayed interval, and marked as TZY, all delayed progress are summed up and averaged to obtain the average delayed progress, and marked as JDP, using the formula The core risk value HXF of the core adjustment module project is obtained, where a1 is the average delay interval coefficient, a2 is the average delay progress coefficient, the value of a1 is 0.47, and the value of a2 is 0.38.

[0033] Through steps one to three, the software module projects in the software project are divided. When the software module projects receive adjustment requirements from customers, the progress of each software module project is deeply analyzed to promptly determine whether there is a progress risk in the software module project.

[0034] Step 4: Obtain the total number of progress fluctuations and total number of progress delays for the core risk module projects and mark them as , x 1 is the total number of schedule fluctuations of the core risk module project, x 2 The total number of progress delays for the core risk module project is obtained, and the total number of progress fluctuations and the total number of progress delays for the passive adjustment module project are obtained and marked as ,y 1 is the total number of schedule fluctuations of the passive adjustment module project, y 2 The total number of progress delays of the passive adjustment module project is obtained by using the cosine similarity algorithm to obtain the connection impact value between the core risk module project and the passive adjustment module project, and the connection impact threshold is set. The connection impact threshold is a system preset threshold and can be modified according to actual needs. When the connection impact value is greater than or equal to the connection impact threshold, the passive adjustment module project is marked as a passive risk module project. When the connection impact value is less than the connection impact threshold, no corresponding processing is performed;

[0035] For example, the total number of schedule fluctuations of the core risk module project is 7 times, the total number of schedule delays of the core risk module project is 4 times, the total number of schedule fluctuations of the passive adjustment module project is 6 times, and the total number of schedule delays of the passive adjustment module project is 3 times. Then the connection impact value of the core risk module project and the passive adjustment module project is ;

[0036] The total number of progress fluctuations is obtained in the following way: obtain all module project progress records of the same module project after receiving the demand adjustment request, sort all module project progress records in the order of record time, calculate the difference between the module project progress of two adjacent module project progress records after sorting, obtain the module project change progress, set the expected project change progress (the expected project change progress is the system preset change progress, which can be modified according to actual needs), when the module project change progress is greater than or equal to the expected project change progress, no corresponding processing is performed, when the module project change progress is less than the expected project change progress, increase the number of progress fluctuations by one, sum up all the progress fluctuation times of the module project, and obtain the total number of progress fluctuations;

[0037] The total number of progress delays is obtained in the following way: obtain all module project progress records of the core adjustment module project, set the module project progress of each module project progress record to correspond to an expected module project progress (the expected module project progress is the system preset progress and can be modified according to actual needs), when the module project progress is greater than or equal to the expected module project progress, no corresponding processing is performed, when the module project progress is less than the expected module project progress, the number of progress delays is increased by one, and all the progress delays of the module projects are summed up to obtain the total number of progress delays.

[0038] Step 5: Get the risk level value Si of the software project. Each range of risk level value Si corresponds to a risk level, where the range of risk level value Si includes (0, S1], (S1, S2], …, (Si-1, Si], and the risk levels include risk level 1, risk level 2, …, risk level i-1, risk level i. When Si∈(0, S1], the entire software project is marked as risk level 1. The higher the risk level, the greater the schedule risk of the software project.

[0039] The risk level value Si of the software project is obtained by marking the total number of passive risk module projects as SGA, marking the total number of passive adjustment module projects as CUK, and using the formula The risk level value Si is obtained, where b1 is the core risk value coefficient, b2 is the project quantity coefficient, the value of b1 is 0.69, and the value of b2 is 2.97.

[0040] Through steps 4 and 5, the risk level of the software project is accurately analyzed through the correlation between the software modules, and the progress risk brought by customer needs to the entire software project is accurately understood, which facilitates the subsequent formulation of corresponding risk adjustment measures.

[0041] The above formulas are all dimensionless and numerical calculations. The formula is a formula for the most recent real situation obtained by collecting a large amount of data and performing software simulation. The preset parameters in the formula are set by technicians in this field according to actual conditions.

[0042] The above embodiments can be implemented in whole or in part by software, hardware, firmware or any other combination. When implemented by software, the above embodiments can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions or computer programs. When the computer instructions or computer programs are loaded or executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from one website site, computer, server or data center to another website site, computer, server or data center by wired or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that contains one or more available media sets. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium. The semiconductor medium can be a solid-state hard disk.

[0043] It should be understood that in the various embodiments of the present application, the size of the serial numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0044] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0045] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0046] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0047] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application can be essentially or partly embodied in the form of a software product that contributes to the prior art. The computer software product is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods described in the various embodiments of the present application. The aforementioned storage media include: various media that can store program codes, such as USB flash drives, mobile hard disks, read-only memories (ROM), random access memories (RAM), magnetic disks or optical disks.

[0048] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

Claims

1. Method based on software project management risk identification, It is characterized in that The steps include: Step 1: After the software project starts, divide the software project into multiple software module projects according to each software module; Step 2: When the customer sends an adjustment request to the project specialist of the software module project, the software module that the software module project is responsible for is marked as the core adjustment module, the knowledge graph between the software modules is obtained, and other software modules that have a relationship with the core adjustment module are marked as passive adjustment modules, and the adjustment request is simultaneously sent to the project specialist of the passive adjustment module project; Step 3: After the project specialists of the core adjustment module project and the passive adjustment module project have received the demand adjustment request, module project progress records of the core adjustment module project and the passive adjustment module project are generated every t time, and according to the comparison result between the core risk value of the core adjustment module project and its threshold value, it is determined whether to mark the core adjustment module project as a core risk module project; Step 4: When a core adjustment module project is marked as a core risk module project, the corresponding passive adjustment module project is marked as a passive risk module project; Step 5: Determine the risk level of the software project; According to the comparison result between the core risk value of the core adjustment module project and its threshold, determine whether to mark the core adjustment module project as a core risk module project, specifically: obtain the core risk value of the core adjustment module project, set the core risk threshold, when the core risk value is less than the core risk threshold, do not do corresponding processing, when the core risk value is greater than or equal to the core risk threshold, mark the core adjustment module project as a core risk module project; The core risk value of the core adjustment module project is obtained in the following way: obtain all module project progress records of the core adjustment module project, set the module project progress of each module project progress record to correspond to an expected module project progress, when the module project progress is greater than or equal to the expected module project progress, do not do corresponding processing, when the module project progress is less than the expected module project progress, calculate the difference between the expected module project change progress and the module project change progress to obtain the delayed progress, and mark the module project progress record as a delayed progress record, sort all delayed progress records in the order of recording time, calculate the time difference between the recording times of the two adjacent delayed progress records after sorting, obtain the delayed interval, sum up all delay intervals and take the average to obtain the average delay interval, and mark it as TZY, sum up all delayed progress and take the average to obtain the average delayed progress, and mark it as JDP, and use the formula The core risk value HXF of the core adjustment module project is obtained, where a1 is the average delay interval coefficient and a2 is the average delay progress coefficient; When a core adjustment module project is marked as a core risk module project, the corresponding passive adjustment module project is marked as a passive risk module project. Specifically, the total number of progress fluctuations and the total number of progress delays of the core risk module project are obtained and marked as , x 1 is the total number of schedule fluctuations of the core risk module project, x 2 The total number of progress delays for the core risk module project is obtained, and the total number of progress fluctuations and the total number of progress delays for the passive adjustment module project are obtained and marked as ,y 1 is the total number of schedule fluctuations of the passive adjustment module project, y 2 The total number of progress delays of the passive adjustment module project is used. The cosine similarity algorithm is used to obtain the connection impact value between the core risk module project and the passive adjustment module project. A connection impact threshold is set. When the connection impact value is greater than or equal to the connection impact threshold, the passive adjustment module project is marked as a passive risk module project. When the connection impact value is less than the connection impact threshold, no corresponding processing is performed. The total number of progress fluctuations is obtained in the following manner: obtain all module project progress records of the same module project after receiving the demand adjustment request, sort all module project progress records in the order of record time, calculate the difference between the module project progress of two adjacent module project progress records after sorting, obtain the module project change progress, set the expected project change progress, when the module project change progress is greater than or equal to the expected project change progress, do not do the corresponding processing, when the module project change progress is less than the expected project change progress, increase the number of progress fluctuations by one, sum up all the progress fluctuation times of the module project, and obtain the total number of progress fluctuations; The total number of progress delays is obtained in the following manner: obtaining all module project progress records of the core adjustment module project, setting the module project progress of each module project progress record to correspond to an expected module project progress, when the module project progress is greater than or equal to the expected module project progress, no corresponding processing is performed, when the module project progress is less than the expected module project progress, the number of progress delays is increased once, and all the progress delays of the module project are summed up to obtain the total number of progress delays; Determining the risk level of the software project, specifically: obtaining a risk level value Si of the software project, wherein the range of each risk level value Si corresponds to a risk level, wherein the range of the risk level value Si includes (0, S1], (S1, S2], …, (Si-1, Si], and the risk levels include risk level 1, risk level 2, …, risk level i-1, and risk level i, and the higher the risk level, the greater the schedule risk of the software project; The risk level value Si of the software project is obtained by marking the total number of passive risk module projects as SGA, marking the total number of passive adjustment module projects as CUK, and using the formula The risk level value Si of the software project is obtained, where b1 is the core risk value coefficient and b2 is the project quantity coefficient.

2. The method for identifying software project management risks according to claim 1, It is characterized in that The module project progress record includes the module project name, module project progress, and recording time.