Software development management method and software development system
By structurally decomposing requirement information and constructing a task topology network, combined with resource capability profiling and status monitoring, the problem of inaccurate requirement transformation and resource allocation in software development was solved, achieving orderly development process and functional compliance of the product, and improving development efficiency and quality.
Patent Information
- Application Number
- CN202511736910.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-25
- Publication Date
- 2026-02-24
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
Existing technologies lack systematic and structured decomposition methods in software development, resulting in the inability to transform requirement information into an orderly requirement system. Development work lacks clear guidance, and resource allocation and project monitoring are inaccurate, affecting development efficiency and the functional integrity and compliance of products.
This paper provides a software development management method that decomposes the original requirements information in a structured manner, builds a structured requirements library, breaks down task nodes step by step, generates a task topology network, allocates tasks and monitors status based on resource capability profiles, generates dynamic project status, and finally confirms functional compliance.
It improves the efficiency of development resource utilization, ensures that development proceeds in an orderly manner according to plan, reduces rework costs, and improves the quality and delivery efficiency of software development results.
Smart Images

Figure CN121560370A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of software engineering technology, and in particular to a software development management method and a software development system. Background Technology
[0002] Existing technologies lack systematic and structured decomposition methods when dealing with the original requirements of software development. They cannot transform scattered requirement information into an orderly requirement system, resulting in a lack of clear and comprehensive guidance for development work. This can easily lead to requirement deviations or omissions, which in turn affect the accuracy of the development direction.
[0003] In the resource allocation and project monitoring stages of software development, existing technologies struggle to accurately match the skill attributes and task requirements of developers. Resource allocation lacks a scientific basis, and the tracking of task nodes is not timely enough, making it impossible to dynamically synchronize project progress and resource load. This limits development efficiency and makes it difficult to guarantee the functional integrity and compliance of the final product. Summary of the Invention
[0004] This invention provides a software development management method and a software development system to solve the problems mentioned in the background art.
[0005] To achieve the above objectives, the present invention provides a software development management method, comprising: S1. Decompose the original requirements information provided by the user into a structured requirement library for the development process; S2. Based on the entries in the structured requirements library, the development work of the development process is broken down step by step to obtain the dependency relationship of the task nodes in the development process, and the task nodes are linked based on the dependency relationship to obtain the task topology network of the software development. S3. Analyze the roles and skill attributes of the development team members in the development process from multiple dimensions to obtain a resource capability profile of the development process; S4. Associate and map the resource capability profile with the task nodes in the task topology network to obtain the resource load view of the development process; S5. Monitor the status of the task nodes in real time and synchronize the status changes to the resource load view to obtain the dynamic project status of the development process; S6. Based on the dynamic project status, confirm the functional compliance of the product in the development process and obtain the acceptance report of the development process.
[0006] In a preferred embodiment, the step of structurally decomposing the original requirements information provided by the user to obtain a structured requirements library for the development process includes: The original requirement information is analyzed from both business function dimensions to obtain the requirement units of the development process; The requirement units are prioritized and weighted to obtain the requirement sequence of the development process; Based on a pre-defined requirement item architecture, the requirement sequence is systematically constructed to obtain a structured requirement library for the development process.
[0007] In a preferred embodiment, the step of breaking down the development work of the development process step by step based on the entries in the structured requirements library to obtain the dependency relationships of the task nodes in the development process, and linking the task nodes based on the dependency relationships to obtain the task topology network of the software development, includes: The items in the structured requirements library are decomposed hierarchically to obtain the task list for the development process; Dependency identification is performed on the logical relationships of the task list to obtain the dependency relationships of task nodes in the development process; Based on the dependencies, the development tasks in the task list are topologically connected to obtain the task topology network of the development process.
[0008] In a preferred embodiment, the step of performing topological connections on the development tasks in the task list according to the dependencies to obtain the task topology network of the development process includes: The development tasks in the task list are uniquely identified to obtain the task nodes in the development process; Based on the order of the dependencies, directed links are made to the task node identifiers in the task list to obtain the task dependency graph of the development process. The task nodes and the directed links are integrated to obtain the task topology network of the development process.
[0009] In a preferred embodiment, the step of performing multi-dimensional analysis of the roles and skill attributes of development team members during the development process to obtain a resource capability profile of the development process includes: The responsibilities of the development team members during the development process are defined to obtain a role list for the development process. The proficiency levels of the development team members' skills are standardized and defined to obtain skill profiles for the development process; By integrating the character list with the skill profile, a development resource capability profile of the development process is obtained.
[0010] In a preferred embodiment, the step of associating and mapping the resource capability profile with task nodes in the task topology network to obtain a resource load view of the development process includes: The matching degree between the skill attributes in the resource capability profile and the skill requirements of the task node is evaluated to obtain the task-resource matching relationship; Based on the task-resource matching relationship, tasks are assigned to the development team members to obtain the task allocation scheme for the development process; By associating the task allocation scheme with the task topology network, a resource load view of the development process is obtained.
[0011] In a preferred embodiment, based on the required proficiency level of the skills, a grade difference analysis is performed on the actual proficiency level of the skill matching pair to obtain a compliance rating for the development process. The calculation formula for the compliance rating is as follows: ; In the formula, The compliance rating is given. The actual proficiency level, The required level of proficiency for the aforementioned skill. The relevant years of experience in the skill profile mentioned above. The preset empirical compensation coefficient, The preset empirical benchmark value, This is the preset penalty coefficient for grade differences; In a preferred embodiment, the step of real-time monitoring of the status of the task nodes and synchronizing status changes to the resource load view to obtain the dynamic project status of the development process includes: The completion progress and status markers of the task nodes are periodically collected to obtain node status snapshots; Synchronize the node status snapshot with the status of the task nodes in the resource load view to obtain an updated resource load view; Based on the updated resource load view, the overall development progress is visualized, and the dynamic project status of the development process is obtained.
[0012] In a preferred embodiment, the step of confirming the functional compliance of the software product developed during the development process based on the dynamic project status, and obtaining an acceptance report for the development process, includes: Extract the acceptance criteria from the development process to obtain the acceptance task list; Based on the acceptance task list, the software product developed in the process is functionally verified to obtain the functional verification results. Based on preset compliance requirements, the software product is subjected to a compliance review to obtain a compliance determination conclusion. The functional verification results are integrated with the compliance judgment conclusions to form an acceptance report for the development process.
[0013] To address the above problems, the present invention also provides a software development system, the system comprising: The requirement structuring module is used to decompose the original requirement information provided by users into a structured requirement library for the development process. The task topology construction module is used to decompose the development work of the development process step by step based on the entries in the structured requirements library, obtain the dependency relationship of the task nodes in the development process, and link the task nodes based on the dependency relationship to obtain the task topology network of the software development. The resource capability analysis module is used to perform multi-dimensional analysis of the roles and skill attributes of development team members during the development process, and obtain a resource capability profile of the development process. The resource load mapping module is used to associate and map the resource capability profile with the task nodes in the task topology network to obtain the resource load view of the development process. The status monitoring and synchronization module is used to monitor the status of the task nodes in real time and synchronize the status changes to the resource load view to obtain the dynamic project status of the development process. The acceptance verification module is used to verify the functional compliance of the product in the development process based on the dynamic project status, and to obtain the acceptance report of the development process.
[0014] Compared with the prior art, the present invention has the following beneficial effects: 1. The software development management method of the present invention decomposes the original requirements information into a structured requirements library, and then decomposes the development work step by step based on the requirements library and constructs a task topology network. This method can clarify the dependencies and execution logic of development tasks. At the same time, it generates resource capability profiles by analyzing the roles and skill attributes of development team members from multiple dimensions, and realizes the accurate association mapping between resources and task nodes. This effectively improves the utilization efficiency of development resources and the rationality of task allocation, thereby accelerating the overall progress of software development and ensuring that the development process is carried out in an orderly manner according to plan.
[0015] 2. This invention monitors the status of task nodes in real time and synchronizes it to the resource load view to form a dynamic project status. This allows for timely understanding of changes in development progress, facilitating rapid adjustments to resource configuration or task arrangements and preventing development process stagnation. Simultaneously, based on the dynamic project status, the invention confirms the functional compliance of the software product and generates an acceptance report. This ensures that the final product's functions meet requirements and comply with regulations, reducing rework costs caused by missing or non-compliant functions and improving the quality and delivery efficiency of software development results. Attached Figure Description
[0016] Figure 1 A flowchart illustrating a software development management method according to an embodiment of the present invention; Figure 2 A functional module diagram of a software development system provided in an embodiment of the present invention; The realization of the objective, functional features and advantages of the present invention will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation
[0017] It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
[0018] This application provides a software development management method. The executing entity of this software development management method includes, but is not limited to, at least one of the following: a server, a terminal, or other electronic devices that can be configured to execute the method provided in this application. In other words, the software development management method can be executed by software or hardware installed on a terminal device or a server device. The server includes, but is not limited to, a single server, a server cluster, a cloud server, or a cloud server cluster. The server can be an independent server or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks (CDNs), and big data and artificial intelligence platforms.
[0019] Reference Figure 1 The diagram shown is a flowchart illustrating a software development management method according to an embodiment of the present invention. In this embodiment, the software development management method includes: S1. Decompose the original requirements information provided by the user into a structured requirement library for the development process; In this embodiment of the invention, the step of structurally decomposing the original requirements information provided by the user to obtain a structured requirements library for the development process includes: The original requirement information is analyzed from both business function dimensions to obtain the requirement units of the development process; The requirement units are prioritized and weighted to obtain the requirement sequence of the development process; Based on a pre-defined requirement item architecture, the requirement sequence is systematically constructed to obtain a structured requirement library for the development process.
[0020] Specifically, when analyzing the original requirements provided by users from both business and functional perspectives, the requirements analysts first organize the content of the original requirements item by item. From the business perspective, they clarify the business scenario corresponding to each requirement, the business goals to be achieved, and the business rules that must be followed, ensuring an accurate grasp of the core value and boundaries of the requirements at the business level. Then, from the functional perspective, they break down the specific functional modules required to achieve the business goals, the operational actions that each functional module needs to perform, and the interaction logic between different functional modules. Through this comprehensive analysis from both business and functional perspectives, each smallest requirement unit that has been confirmed by both business and functional dimensions and has independent business significance and functional integrity is identified as the requirement unit in the development process.
[0021] Furthermore, when prioritizing and weighting requirement units, an evaluation team composed of the business lead and the development lead jointly assesses each requirement unit from a business value perspective, evaluating its contribution to the overall business objectives, the frequency of user usage of the corresponding function, and the scope of its impact on core business processes. Then, from a development and implementation perspective, the team assesses whether the required technical reserves are sufficient, the estimated development cycle length, and the external resources or internal modules relied upon during development. Subsequently, following a fixed rule—"requirement units with high business value and low development difficulty have the highest priority, followed by those with high business value and high development difficulty, then those with low business value and low development difficulty, and finally those with low business value and high development difficulty have the lowest priority"—a unique priority ranking is determined for each requirement unit. All requirement units are then arranged sequentially according to this priority ranking, forming the requirement sequence for the development process.
[0022] Furthermore, when systematically constructing the requirement sequence based on the preset requirement item architecture, the preset requirement item architecture first defines fixed item fields such as requirement identifier, requirement description, business dimension attributes, functional dimension attributes, priority level, associated requirement number, and acceptance criteria. Then, for each requirement unit in the requirement sequence, its information is filled into the corresponding fields of the preset requirement item architecture. The requirement identifier field is filled with the unique identifier assigned to the requirement unit; the requirement description field is filled with the specific business content and functional requirements of the requirement unit; the business dimension attribute field is filled with the business domain, business objectives, and business rules to which the requirement unit belongs; the functional dimension attribute field is filled with the corresponding functional module, functional action, and interaction logic of the requirement unit; the priority level field is filled with the previously defined priority ranking result of the requirement unit; the associated requirement number field is filled with the unique identifier of other requirement units that have business or functional relationships with the requirement unit; and the acceptance criteria field is filled with the specific inspection conditions for judging whether the requirement unit has been completed. After all requirement units have completed the information filling in the preset requirement item architecture, all the filled requirement items are uniformly integrated and collected to form a structured requirement library for the development process.
[0023] In summary, the process involves a comprehensive analysis of the original requirements provided by users from both business and functional perspectives. First, the business scenarios, business objectives, and business rules corresponding to the original requirements are clarified. Then, the functional modules, functional operations, and inter-functional interaction logic required to achieve the business objectives are broken down. Through this dual-dimensional analysis and confirmation, the requirement units with independent business significance and functional integrity are finally obtained during the development process.
[0024] In general, the process involves defining the priority and weight of the acquired requirement units. Business and development stakeholders jointly assess the business value and development difficulty of each requirement unit, determine the priority ranking of each requirement unit according to fixed assessment rules, and thus form the requirement sequence for the development process.
[0025] In general, it relies on a pre-defined requirement item architecture that includes fixed items such as requirement identifier, requirement description, business dimension attributes, functional dimension attributes, priority level, associated requirement number, and acceptance criteria. Each requirement unit in the requirement sequence is filled into the corresponding fields of the architecture one by one, ensuring that the information of each requirement unit is fully presented in the architecture. After all requirement units are filled, they are uniformly integrated to finally obtain a structured requirement library for the development process.
[0026] S2. Based on the entries in the structured requirements library, the development work of the development process is broken down step by step to obtain the dependency relationship of the task nodes in the development process, and the task nodes are linked based on the dependency relationship to obtain the task topology network of the software development. In this embodiment of the invention, the step of breaking down the development work of the development process step by step based on the entries in the structured requirements library to obtain the dependency relationships of the task nodes in the development process, and linking the task nodes based on the dependency relationships to obtain the task topology network of the software development, includes: The items in the structured requirements library are decomposed hierarchically to obtain the task list for the development process; Dependency identification is performed on the logical relationships of the task list to obtain the dependency relationships of task nodes in the development process; Based on the dependencies, the development tasks in the task list are topologically connected to obtain the task topology network of the development process.
[0027] The step of performing topological connections on the development tasks in the task list based on the dependencies to obtain the task topology network of the development process includes: The development tasks in the task list are uniquely identified to obtain the task nodes in the development process; Based on the order of the dependencies, directed links are made to the task node identifiers in the task list to obtain the task dependency graph of the development process. The task nodes and the directed links are integrated to obtain the task topology network of the development process.
[0028] Specifically, when hierarchically decomposing the items in the structured requirements library, the development planners first extract the requirement description, business dimension attributes, and functional dimension attributes of each item in the structured requirements library, clarifying the core requirement objectives corresponding to each item. Then, starting from the top-level requirement objectives, they are broken down into several mid-level functional module tasks. Each mid-level functional module task needs to clarify the specific operational direction required to implement the module. Next, for each mid-level functional module task, it is further broken down into several basic execution tasks. Each basic execution task needs to clarify the specific execution content, the resources to be called, and the phased results to be achieved. During the decomposition process, it is ensured that each basic execution task can be traced back to the corresponding item in the structured requirements library, and that all decomposed tasks are without duplication or omission. Finally, all basic execution tasks are organized and summarized according to the relationship between the requirement items to obtain the task list for the development process.
[0029] Furthermore, when identifying dependencies in the task list, project managers and technical leads jointly analyze each task individually. First, they determine if each task requires the output of other tasks as input. If a task requires the results of another task to be completed before it can be started, the former is identified as a subsequent task and the latter as a preceding task, forming an "input-output dependency" relationship. Next, they determine if multiple tasks need to share the same specific resource. If multiple tasks need to use the resource at the same time, their execution order is determined according to the order in which the resource is used, forming a resource dependency relationship. Finally, all identified input-output dependencies and resource dependencies are organized and integrated to clarify all preceding and subsequent tasks for each task, thus obtaining the dependency relationships of task nodes during development.
[0030] Furthermore, when performing topological connections between development tasks in the task list based on dependencies, each development task in the task list is first assigned a unique text identifier, defining each uniquely identified task as a task node in the development process. Then, based on the determined task node dependencies, each task node is connected to its corresponding predecessor and successor task nodes using directional lines, with the starting point of the line being the predecessor task node and the ending point being the successor task node, thus visually representing the sequential logic of task execution. During the connection process, the dependencies of each task node must be checked one by one to ensure that all predecessor and successor task nodes correspond accurately, with no incorrect or missing connections. Finally, all task nodes and the directional lines connecting these nodes are integrated to form a task topology network that clearly displays the execution order and associated logic of all tasks in the development process.
[0031] Specifically, when defining unique identifiers for development tasks in the task list, the development coordinator first reviews the content of each development task in the task list, clarifying the structured requirement library entry, the functional module to which each development task belongs, and the specific execution action, ensuring that the core characteristics of each development task can be clearly distinguished. Then, a unified rule for generating unique identifiers is established. This rule uses a fixed structure of "requirement entry association name - functional module name - task execution action name," where the requirement entry association name directly corresponds to the core name of the structured requirement library entry to which the development task belongs, the functional module name is taken from the full name of the functional module to which the development task belongs, and the task execution action name extracts the core execution behavior of the development task. According to this rule, a unique text identifier is generated for each development task. Development tasks with this unique identifier and containing information on requirement affiliation, functional module, and execution action are identified as task nodes in the development process.
[0032] Furthermore, when performing directed links on the task node identifiers in the task list based on the order of dependencies, the project technical staff first confirms the predecessor and successor task nodes of each task node according to the established task node dependencies. This clarifies which predecessor task nodes must be completed before each task node can start, and which successor task nodes must be completed before it can start, thus locking the execution order between task node identifiers. Then, using a visual drawing tool, each task node's unique identifier is placed as an independent drawing element in the drawing interface. Dependent task node identifiers are connected by lines with arrows, with the starting point of the arrow set to the predecessor task node identifier and the ending point set to the successor task node identifier. The type of dependency relationship is also labeled next to the arrow to ensure that the direction of each directed link is completely consistent with the order of dependencies. By completing the directed linking operation for all task node identifiers, a task dependency graph of the development process is obtained.
[0033] Furthermore, when integrating task nodes and directed links, project managers first verify each task node and each directed link in the task dependency graph one by one. This confirms that all task nodes come from the task list and have complete information, and that all directed links accurately correspond to the determined task node dependencies, with no missing task nodes and no erroneous or redundant directed links. Then, the verified task nodes and directed links are integrated as a whole. The layout of the task nodes is adjusted in the visualization interface to make the direction of the directed links clear and without overlapping or obstruction, ensuring that the execution order and associated logic of all task nodes can be presented intuitively. After integration, a holistic structure that fully reflects the execution order, dependencies, and complete information of development tasks is formed, resulting in the task topology network of the development process.
[0034] In general, the process involves extracting the requirement description, business dimension attributes, and functional dimension attributes of each item from the structured requirement library, clarifying the core requirement objectives corresponding to each item, and then starting from the top-level requirement objectives, breaking them down into mid-level functional module tasks that include specific operational directions. Next, each mid-level functional module task is further broken down into basic execution tasks that cover specific execution content, required resources, and phased results. During the process, it is ensured that all decomposed tasks can be traced back to the corresponding requirement items without duplication or omission. Finally, these basic execution tasks are organized and summarized according to the relationship between requirement items to obtain the task list for the development process.
[0035] In general, project managers and technical leads jointly analyze each task in the task list one by one, determining whether the execution of each task requires the output of other tasks as input conditions. If so, the former is identified as a subsequent task and the latter as a preceding task. At the same time, it is determined whether there are multiple tasks sharing specific resources. If so, the execution order of tasks is determined according to the order of resource occupancy. Subsequently, these output-input dependencies and resource dependencies are integrated to clarify all the preceding and subsequent tasks corresponding to each task, thus obtaining the dependency relationships of task nodes in the development process.
[0036] In summary, the process begins by assigning a unique identifier to each development task in the task list. Development tasks with this identifier and execution information are then defined as task nodes. The execution order is determined based on the dependencies between task nodes. Directed lines are used to link preceding and subsequent task nodes to form a task dependency graph. Finally, all task nodes and the directed lines connecting them are integrated to ensure a clear representation of the execution order and associated logic of all tasks, resulting in a task topology network for the development process.
[0037] In general, for each development task in the task list, we first sort out its corresponding requirements, functional modules and specific execution content to clarify its core characteristics, and then generate a unique identifier for each development task according to unified rules. The development task with this unique identifier and containing complete task information is identified as the task node in the development process.
[0038] In general, the process begins by identifying the predecessor and successor task nodes of each task node based on the established task node dependencies, determining the execution order between task node identifiers, and then visually connecting the dependent task node identifiers with arrowed lines, where the arrows start at the predecessor task node identifier and end at the successor task node identifier. This completes the directed linking of all task node identifiers, resulting in a task dependency graph of the development process.
[0039] In general, the process involves first verifying each task node and directed link to ensure that all task nodes come from the task list and have complete information, and that all directed links accurately match the dependencies of the task nodes. Then, the verified task nodes and directed links are integrated as a whole, and the layout is adjusted to clearly present the task execution order and related logic, ultimately forming a task topology network that can comprehensively reflect the development process and the relationships between development tasks.
[0040] S3. Analyze the roles and skill attributes of the development team members in the development process from multiple dimensions to obtain a resource capability profile of the development process; In this embodiment of the invention, the step of performing multi-dimensional analysis of the roles and skill attributes of development team members during the development process to obtain a resource capability profile of the development process includes: The responsibilities of the development team members during the development process are defined to obtain a role list for the development process. The proficiency levels of the development team members' skills are standardized and defined to obtain skill profiles for the development process; By integrating the character list with the skill profile, a development resource capability profile of the development process is obtained.
[0041] Specifically, when defining the responsibilities of development team members during the development process, the project leader first outlines the key stages of the entire software development process, including requirements analysis, code development, functional testing, and version iteration. This clarifies the specific work content and deliverables required for each stage. For example, the requirements analysis stage requires detailed requirements gathering, requirements documentation writing, and confirmation of user requirements; the code development stage requires writing code for designated modules, adding code comments, and debugging basic functions. Then, based on team members' job roles and past experience, each member is assigned specific responsibilities for each stage, ensuring that each member's responsibilities are clear, non-overlapping, and cover the entire development process. Finally, each member's name, assigned responsibilities, corresponding development stage, and deliverables are compiled into a structured list, resulting in a role list for the development process.
[0042] Furthermore, when standardizing the definition of proficiency levels for development team members' skills, the technical lead first lists the necessary skills for the development process based on software development requirements. These skills cover categories such as programming language usage, development tool operation, requirements analysis methods, and test process execution. For example, programming languages include [list of programming languages], and development tools include code editors and version control tools. Then, a unified proficiency level classification standard is established. "Mastering" is defined as being able to independently complete complex tasks corresponding to the skill item without external guidance and with results meeting high standards. "Familiar" is defined as being able to independently complete routine tasks corresponding to the skill item, requiring minimal guidance when encountering complex problems. "Understanding" is defined as being able to complete basic tasks corresponding to the skill item, requiring full guidance from others. Subsequently, each member's performance in each necessary skill item is evaluated through practical task assessments and skills Q&A sessions. For example, when evaluating a member's programming skills, they are asked to independently develop a module with data interaction functionality to determine if they have reached the "Mastering" standard. The names of each member, the names of each skill item, and the corresponding proficiency levels are compiled into a structured document to obtain a skills file for the development process.
[0043] Furthermore, when integrating the role list and skill profiles, the process begins by using the member names in the role list as an index to match the corresponding skill information in the skill profiles. For example, if member A's responsibility in the role list is "code development," and member A's skill items in the skill profile include "programming" and "version control tools," then member A's "code development" responsibility is associated with these two skills and their corresponding proficiency levels. Next, a unique information entry is created for each member, clearly presenting the member's name, the responsibility content in the role list, the skill item name in the skill profile, and the corresponding proficiency level. This ensures a clear correspondence between responsibilities and skills, and intuitively reflects the skill support required for members to fulfill their responsibilities. Finally, all members' unique information entries are compiled to form a comprehensive document covering the responsibilities, skill items, and proficiency levels of all team members, resulting in a profile of development resource capabilities during the development process.
[0044] In general, the process involves first identifying the key steps in the entire software development process and the specific tasks and deliverables required for each step. Then, based on the job roles and past work experience of the development team members, each member is assigned specific responsibilities for the corresponding steps, ensuring that the scope of responsibilities is clear, non-overlapping, and covers the entire development process. Finally, each member's name, assigned responsibilities, corresponding development steps, and deliverables are compiled into a structured list to obtain the role list for the development process.
[0045] In general, the process involves first identifying the necessary skill categories and specific skills based on software development requirements, then establishing a standardized proficiency level classification system that includes "mastery," "familiarity," and "understanding," followed by evaluating each member's performance in each skill category through practical task assessments and skills Q&A sessions, and finally compiling the member's name, skill name, and corresponding proficiency level into a structured document to obtain a skills file for the development process.
[0046] In general, the process involves using the names of members in the role list as an index, matching the skill information of the corresponding members in the skill profiles one by one, establishing a connection between member responsibilities, skill items, and proficiency levels, and then creating a unique information entry for each member that includes their name, responsibilities, skill item names, and corresponding proficiency levels to ensure a clear correspondence between responsibilities and skills. Finally, all members' unique information entries are compiled into a complete document to obtain a profile of development resource capabilities during the development process.
[0047] S4. Associate and map the resource capability profile with the task nodes in the task topology network to obtain the resource load view of the development process; In this embodiment of the invention, the step of associating and mapping the resource capability profile with task nodes in the task topology network to obtain a resource load view of the development process includes: The matching degree between the skill attributes in the resource capability profile and the skill requirements of the task node is evaluated to obtain the task-resource matching relationship; Based on the task-resource matching relationship, tasks are assigned to the development team members to obtain the task allocation scheme for the development process; By associating the task allocation scheme with the task topology network, a resource load view of the development process is obtained.
[0048] The process of evaluating the match between the skill attributes in the resource capability profile and the skill requirements of the task nodes to obtain the task-resource matching relationship includes: A standardized comparison is performed between the skill items of the skill attributes and the skill items of the skill requirements to obtain the skill matching pairs for the development process; Based on the required proficiency level of the skills, a grade difference analysis is performed on the actual proficiency level of the skill matching pairs to obtain the compliance rating of the development process. The calculation formula for the compliance rating is as follows: ; In the formula, The compliance rating is given. The actual proficiency level, The required level of proficiency for the aforementioned skill. The relevant years of experience in the skill profile mentioned above. The preset empirical compensation coefficient, The preset empirical benchmark value, This is the preset penalty coefficient for grade differences; The matching degree rating is weighted to obtain the task-resource matching relationship.
[0049] Specifically, when assessing the match between skill attributes in the resource capability profile and the skill requirements of task nodes, the project's technical lead first extracts the skill requirements for each task node in the task topology network, clarifying the skill categories required for each task node and the required proficiency level. For example, if a task node requires coding, its skill requirement is the use of a specific programming language with a proficiency level sufficient to independently develop complex modules. Then, the skill attributes of each development team member are extracted from the resource capability profile, including the skill categories they possess and their corresponding proficiency levels. Subsequently, each task node is assigned a specific skill requirement. The skill requirements of each task node are compared one by one with the skill attributes of all members. If a member's skill items are completely consistent with the skill requirements of the task node, and the member's proficiency in that skill meets or exceeds the proficiency required by the task node, then the member is considered to have a high degree of matching with the task node. If a member's skill items are consistent with the skill requirements of the task node, but the proficiency does not meet the requirements of the task node, then the member is considered to have a low degree of matching. If a member's skill items are inconsistent with the skill requirements of the task node, then the member is considered to have no degree of matching. Finally, the correspondence between each task node and members with high and low degree of matching is organized into a structured table to obtain the task-resource matching relationship.
[0050] Furthermore, when assigning tasks to development team members based on the task-resource matching relationship, project managers first prioritize assigning members with high matching scores to each task node based on the task-resource matching relationship, ensuring that the skill requirements of the task node are fully met. During the assignment process, the number of task nodes assigned to each member and the estimated workload of each task node must be recorded simultaneously to avoid over-assignment of a member leading to excessive workload, or unassigned members resulting in idle resources. If there are no highly matched members for a task node, the member with the closest proficiency to the task node requirements is selected from the members with low matching scores, and it is noted that this member needs to receive targeted skills training before the task is executed to meet the task requirements. After all task nodes have been assigned members, the name of each member, the name of the assigned task node, the specific work content of the task node, and the estimated completion time of the task are compiled into a complete document to obtain the task allocation plan for the development process.
[0051] Furthermore, when associating the task allocation scheme with the task topology network, the project coordinator first obtains a visual chart of the task topology network, which contains all task nodes and their dependencies. Then, based on the task allocation scheme, the name of the development team member responsible for that task node is labeled next to each task node in the task topology network, along with the estimated workload and estimated completion time. After labeling, it is necessary to further check whether the member labeling for each task node is completely consistent with the task allocation scheme, ensuring no mislabeling or omissions. Subsequently, a load statistics area is added to the task topology network, summarizing the estimated workload of all task nodes currently managed by each member, visually presenting the resource load status of each member. Finally, the task topology network with labeled member information, workload information, and the load statistics area is saved, forming a resource load view that clearly displays the correspondence between task nodes and members, as well as the member load status during the development process.
[0052] Specifically, when standardizing the comparison between skill items in skill attributes and skill requirements, the project technical lead first establishes a unified naming rule for skill items, unifying skill items with different expressions but the same core meaning into a fixed name. For example, "code writing and implementation" and "writing functional code" are both unified as "code writing." At the same time, the core definition of each skill item is clearly defined to ensure that the connotation and extension of the skill item are clear and unambiguous. Then, all skill items included in the skill attributes of development team members are extracted one by one from the resource capability profile, and all skill items required for each task node are extracted one by one from the skill requirements of the task nodes. Subsequently, the member skill items and the task node skill items are compared one by one according to the unified naming rule. If a member's skill item has a name and definition that are completely consistent with a skill item of a task node, the two are combined into a correspondence. After summarizing all such correspondences, the skill matching pairs for the development process are obtained.
[0053] When performing a proficiency level difference analysis on the actual proficiency of skill-matched pairs based on the required proficiency level, the technical lead first establishes a unified proficiency level system, clearly defining three fixed levels: "Master," "Familiar," and "Understanding." "Master" is defined as being able to independently complete complex tasks corresponding to the skill item with high-standard results; "Familiar" is defined as being able to independently complete routine tasks corresponding to the skill item with satisfactory results, requiring only minor guidance in complex scenarios; and "Understanding" is defined as being able to complete basic tasks corresponding to the skill item under guidance. Next, the required proficiency level for the task node skills and the actual proficiency level of the member's skill attributes are extracted from each skill-matched pair. Then, the level difference is determined by comparing these two levels. For example, the level difference is zero when the task requires "Master" and the member actually "Masters"; one when the task requires "Master" and the member actually "Familiar"; and two when the task requires "Master" and the member actually "Understands." Based on the level difference, a compliance rating is determined: a level difference of zero is rated "High Compliance," a level difference of one is rated "Medium Compliance," and a level difference of two is rated "Low Compliance." The compliance ratings of all skill-matched pairs are then summarized to obtain the compliance rating of the development process.
[0054] When assigning weights to the compliance ratings, the project manager first determines the importance weight of each task node based on its role in the entire software development process. Core function development task nodes have the highest weight, auxiliary function support task nodes have a medium weight, and basic preparation task nodes have the lowest weight, with a fixed proportion corresponding to each weight. Next, base scores are assigned to different compliance ratings: "High Compliance" corresponds to the full base score, "Medium Compliance" corresponds to 70% of the full base score, and "Low Compliance" corresponds to 30% of the full base score. Then, for each skill matching pair, the base score of its compliance rating is multiplied by the importance weight proportion of the corresponding task node to obtain the final matching score. Finally, the member information and final matching scores of each task node and corresponding skill matching pair are linked and organized, sorted from highest to lowest final matching score, forming a correspondence table between task nodes and suitable members, thus obtaining the task-resource matching relationship in the development process.
[0055] Specifically, actual proficiency comes from the development resource capability profile, which is obtained by integrating the role list and skill profile. The skill profile is formed by standardizing the proficiency of the development team members in their skills. Actual proficiency is the proficiency of the member in the corresponding skill recorded in the skill profile.
[0056] Furthermore, the required proficiency level is derived from the skill requirements of the task nodes, which are extracted from the task topology network. The proficiency level required for each task node to complete the required skill items is key information for clarifying the skill level required for task execution.
[0057] Furthermore, the relevant years of experience are derived from the skills profile. The skills profile records the proficiency of development team members in each skill item, while simultaneously recording the cumulative years of relevant work experience in that skill item, thus forming a complete skills information record.
[0058] Furthermore, the experience compensation coefficient is a preset fixed value, determined based on the overall skill requirements of the software development project, the complexity of the task, and the conventional standards of similar projects in the industry, and is used to balance the compensatory effect of relevant experience on insufficient proficiency.
[0059] Furthermore, the experience benchmark is a preset fixed value, determined by referring to the average number of effective years of experience required for members to complete the relevant tasks of the corresponding skill items in similar software development projects in the industry, and serves as a standard for measuring whether the relevant years of experience of members have compensatory value.
[0060] Furthermore, the level difference penalty coefficient is a preset fixed value, determined based on the actual impact of the gap between different skill proficiency levels on the quality and efficiency of task completion, and is used to quantify the deduction of matching score when proficiency does not meet the requirements.
[0061] Furthermore, the core of this calculation process is to comprehensively evaluate the suitability rating of skill matching pairs, fully consider the compatibility between members' skills and task skill requirements, and ensure that the evaluation results are objective and accurate.
[0062] Furthermore, the ratio of actual proficiency to required proficiency directly reflects the basic matching degree of a member's skills to the task's basic requirements, forming the core basis for compliance rating.
[0063] Furthermore, by using a grade difference penalty coefficient, corresponding points are deducted for cases where the actual proficiency does not meet the required proficiency level, accurately reflecting the negative impact of proficiency gaps on matching results.
[0064] Furthermore, by using an experience compensation coefficient, combined with the ratio of a member's relevant years of experience to the experience benchmark, reasonable scores are added to members whose proficiency does not meet the requirements but who have certain relevant experience, reflecting the compensatory role of experience in addressing skill deficiencies.
[0065] Furthermore, through comprehensive calculation of multiple factors, a conformity rating that fully and objectively reflects the suitability of skill matching is obtained, providing a scientific basis for determining the subsequent task-resource matching relationship and ensuring the rationality and accuracy of task allocation.
[0066] In summary, the process involves extracting the skill attributes of development team members from the resource capability profile of the development process, extracting the skill requirements of each task node from the task topology network of software development, conducting a matching degree assessment by comparing the compatibility between the skill attributes of members and the skill requirements of task nodes, identifying the suitable members for each task node, and organizing the correspondence between task nodes and suitable members into structured content to obtain the task-resource matching relationship in the development process.
[0067] In general, the task allocation plan is based on the task-resource matching relationship in the development process. Each task node is assigned a suitable development team member, with priority given to members whose skill attributes match the skill requirements of the task node to ensure the effectiveness of task execution. At the same time, the number of task nodes assigned to each member and the estimated workload of each task node are recorded to avoid excessive member load or idle resources. If there are no highly matched members for a certain task node, members with proficiency close to the requirements and who need to receive targeted skills training in advance are selected. After all task nodes have been assigned members, the member names, the names of the task nodes they are responsible for, the specific content of the tasks, and the estimated completion time are compiled to obtain the task allocation plan for the development process.
[0068] In summary, it is a visual chart of the task topology network for software development. Based on the task allocation scheme in the development process, the name of the development team member responsible for the task, the estimated workload, and the estimated completion time are labeled next to each task node in the chart. The labeling information is checked to ensure consistency with the task allocation scheme to ensure no mislabeling or omissions. A load statistics area is added to the chart to summarize the total estimated workload of all task nodes currently under the responsibility of each member, intuitively presenting the member's load status. The integrated visual chart is saved to obtain a resource load view of the development process.
[0069] In general, the process involves first extracting all skill items from the resource capability profile of the development team members, then extracting all skill items required for each task node from the skill requirements of the task nodes, and finally establishing a unified naming rule for skill items. Skill items with different expressions but the same core meaning are unified into fixed names, and the core definition of each skill item is clarified. Subsequently, the member skill items and task node skill items are compared one by one according to the unified naming rule. Member skill items with completely consistent names and definitions are grouped into a correspondence with task node skill items. All such correspondences are summarized to obtain the skill matching pairs for the development process.
[0070] In general, the process begins by establishing a unified proficiency level system, clearly defining three fixed levels: "Master," "Familiar," and "Understanding." "Master" is defined as being able to independently complete complex tasks corresponding to the skill item with high-standard results; "Familiar" is defined as being able to independently complete routine tasks corresponding to the skill item with satisfactory results, requiring only minimal guidance in complex scenarios; and "Understanding" is defined as being able to complete basic tasks corresponding to the skill item with guidance from others. Then, from each skill pair, the required proficiency level for the task node skill and the actual proficiency level of the member's skill attribute are extracted. The difference between these two levels is determined: if the task requires "Master" and the member actually "Masters," the level difference is zero; if the task requires "Master" and the member actually "Familiar," the level difference is one; and if the task requires "Master" and the member actually "Understanding," the level difference is two. Based on the level difference, a compliance rating is determined: a level difference of zero is rated "High Compliance," a level difference of one is rated "Medium Compliance," and a level difference of two is rated "Low Compliance." The compliance ratings of all skill pairs are then summarized to obtain the compliance rating for the development process.
[0071] In general, the importance weight of each task node is first determined based on its role in the entire software development process. Core function development task nodes have the highest weight, auxiliary function support task nodes have a medium weight, and basic preparation task nodes have the lowest weight. Then, a base score is assigned to different compliance ratings: "high compliance" corresponds to the full base score, "medium compliance" corresponds to 70% of the full base score, and "low compliance" corresponds to 30% of the full base score. Subsequently, for each skill matching pair, the base score of its compliance rating is multiplied by the importance weight ratio of the corresponding task node to obtain the final matching score for that skill matching pair. Finally, the member information and final matching score of each task node and corresponding skill matching pair are associated and organized, and sorted from high to low according to the final matching score to form a correspondence table between task nodes and suitable members, thus obtaining the task-resource matching relationship in the development process.
[0072] S5. Monitor the status of the task nodes in real time and synchronize the status changes to the resource load view to obtain the dynamic project status of the development process; In this embodiment of the invention, the step of real-time monitoring of the status of the task node and synchronizing the status changes to the resource load view to obtain the dynamic project status of the development process includes: The completion progress and status markers of the task nodes are periodically collected to obtain node status snapshots; Synchronize the node status snapshot with the status of the task nodes in the resource load view to obtain an updated resource load view; Based on the updated resource load view, the overall development progress is visualized, and the dynamic project status of the development process is obtained.
[0073] Specifically, when periodically collecting the completion progress and status markers of task nodes, the project coordinator first determines a fixed collection cycle based on the estimated execution time of each task node. A longer estimated execution time results in a longer collection cycle, and a shorter estimated execution time results in a shorter collection cycle. At a fixed time point in each collection cycle, development team members must submit the specific completed content of the current task node. For example, for code development tasks, this includes submitting the written core functional code snippets and compilation results; for testing tasks, it includes submitting the number of executed test cases and their pass / fail status. The project coordinator checks the submitted content against the preset delivery standards for the task node and calculates the current completion progress percentage. Simultaneously, development team members select an option from four preset status markers: "Not Started," "In Progress," "Pending Review," and "Completed," which matches the actual task situation. The project coordinator verifies the selected status marker based on the submitted content to avoid incorrect status selection. Finally, the unique identifier of each task node, the collection time, the verified completion progress percentage, and the verified status markers are compiled into a structured record. After summarizing these structured records for all task nodes, a node status snapshot is obtained.
[0074] Furthermore, when synchronizing the node status snapshot with the task nodes in the resource load view, the project coordinator first extracts the unique identifiers of all task nodes in the resource load view, and then matches these identifiers one by one with the unique identifiers of the task nodes in the node status snapshot. For the successfully matched task nodes, the project coordinator updates the completion progress percentage in the node status snapshot to the progress display area of the corresponding node in the resource load view, and at the same time replaces the original status mark of the corresponding node in the resource load view with the status mark in the node status snapshot. After the synchronization operation is completed, the project coordinator checks each task node in the resource load view one by one to confirm that the completion progress and status mark of all nodes are consistent with the node status snapshot, and there are no erroneous updates or omissions. The resource load view that has been checked and found to be correct is the updated resource load view.
[0075] Furthermore, when visualizing the overall development progress based on the updated resource load view, the project coordinator first constructs a visualization framework using a Gantt chart. The horizontal axis of the Gantt chart marks the time nodes within the development cycle, and the vertical axis arranges all task nodes according to the dependency order of task nodes in the task topology network. Based on the completion progress and status markers of each task node in the updated resource load view, a unique color block is configured for task nodes in different states. "Completed" nodes are represented by green blocks, with the block length covering the entire preset time span of the node; "In Progress" nodes are represented by blue blocks, with the block length corresponding to the corresponding portion of the preset time span of the node according to the completion progress ratio; "Pending Review" nodes... "Core" status nodes are represented by yellow blocks, with the block length corresponding to the preset time span of the node according to the completion progress ratio. "Not Started" status nodes are represented by gray blocks with a length of zero. A statistics area is set on the right side of the Gantt chart to summarize and display the number of task nodes for each status. At the same time, based on the weight of the estimated workload of each task node to the overall development workload, the weighted average of the completion progress of all task nodes is calculated as the overall development progress ratio and highlighted in the statistics area. Finally, the time of the most recent status update is marked at the top of the visualization framework to ensure the timeliness and traceability of the progress data. This presentation result, which includes a Gantt chart, statistics area, and update time, represents the dynamic project status of the development process.
[0076] In general, a fixed data collection cycle is first determined based on the estimated execution time of each task node. At a fixed time in each cycle, development team members submit the specific completion content of the task node. Project coordinators verify the content against preset delivery standards and calculate the completion progress percentage. At the same time, members select the corresponding option from preset status flags, and coordinators verify and confirm the status flags. Finally, the unique identifier of each task node, the data collection time, the verified completion progress percentage, and the verified status flags are compiled into a structured record, and all records are summarized to obtain a node status snapshot.
[0077] In general, the process involves first extracting the unique identifier of each task node in the resource load view and matching it one by one with the task node identifier in the node status snapshot. For nodes that match successfully, the progress percentage in the snapshot is updated to the progress display area of the corresponding node in the view, and the status marker of the corresponding node in the view is replaced synchronously. After the update is completed, all task nodes in the view are checked one by one to ensure that the progress and status markers are consistent with the snapshot. The resource load view that has been checked and found to be correct is the updated resource load view.
[0078] In summary, a Gantt chart is first used to build a visualization framework. The horizontal axis marks the development cycle time nodes, and the vertical axis arranges the nodes according to the task node dependency order. Then, based on the completion progress and status markers of each node in the updated resource load view, corresponding color blocks are configured for the nodes. A statistical area is set on the right side of the Gantt chart to summarize the number of nodes in each status and calculate the weighted average of the overall development progress. Finally, the most recent update time is marked at the top of the framework to form a dynamic project status that can reflect the development process changes in real time.
[0079] S6. Based on the dynamic project status, confirm the functional compliance of the product in the development process and obtain the acceptance report of the development process.
[0080] In this embodiment of the invention, the step of confirming the functional compliance of the software product during the development process based on the dynamic project status, and obtaining an acceptance report for the development process, includes: Extract the acceptance criteria from the development process to obtain the acceptance task list; Based on the acceptance task list, the software product developed in the process is functionally verified to obtain the functional verification results. Based on preset compliance requirements, the software product is subjected to a compliance review to obtain a compliance determination conclusion. The functional verification results are integrated with the compliance judgment conclusions to form an acceptance report for the development process.
[0081] Specifically, when extracting the acceptance criteria from the development process to obtain the acceptance task list, the person in charge of acceptance first extracts the acceptance criterion field content of each item from the structured requirements library of the development process. This field records the specific verification conditions for judging whether the corresponding requirement unit has been completed, including functional implementation requirements, performance benchmarks, interaction logic specifications, etc. Then, the extracted acceptance criteria are classified and sorted according to dimensions such as "functional integrity verification", "performance stability verification", and "interaction rationality verification" to ensure that each acceptance criterion corresponds to a clear verification direction. Then, each acceptance criterion is converted into an executable acceptance task. For example, the acceptance criterion "a certain function needs to support user information query operation" is converted into the specific acceptance task "operate the software to enter the user information page, perform the query operation and confirm that the query result is accurately displayed". Finally, all the converted acceptance tasks are arranged in order according to the classification dimensions, and the structured requirements library item association information corresponding to each task is marked to form the acceptance task list of the development process.
[0082] Furthermore, when performing functional verification on the software product during the development process based on the acceptance task list, testers execute verification operations one by one according to the task order in the acceptance task list. For functional acceptance tasks, testers perform actual operations on the software product according to the operation steps in the task description, observing whether the software's response results are consistent with the expected results specified in the acceptance criteria. For example, when verifying the "user login function," testers check whether the correct account and password are entered to see if the user successfully enters the system, and check whether an error message is displayed when an error is entered. For performance acceptance tasks, testers observe whether the software's response speed, resource consumption, etc., meet the performance benchmarks in the acceptance criteria when performing the corresponding operations. For example, when verifying "data loading performance," testers record whether the time taken for the software to load a specified amount of data is within the allowable range of the acceptance criteria. After each acceptance task is completed, testers immediately record the verification result of the task, including "pass" or "fail." If the result is "fail," the specific manifestations of non-compliance with the acceptance criteria are recorded in detail. After all acceptance tasks have been verified, the verification records of all tasks are summarized and organized in the order of the list to form the functional verification results of the development process.
[0083] Furthermore, when conducting a compliance review of a software product based on pre-defined compliance requirements to arrive at a compliance judgment, the compliance review personnel first clarify the specific content of the pre-defined compliance requirements. These requirements cover industry-standard software development practices, data security protection specifications, user privacy protection guidelines, and general interface interaction specifications. Then, the review personnel conduct a point-by-point review of each compliance requirement. For example, when reviewing data security protection specifications, they check whether the software product's data storage method complies with encryption requirements and whether the data transmission process has a security protection mechanism. When reviewing user privacy protection guidelines, they check whether the software collects user information without authorization and whether it provides privacy settings options. After completing the review of each compliance requirement, the review personnel record the compliance status. If it is compliant, it is marked "compliant"; if it is non-compliant, the specific non-compliant aspects and corresponding compliance requirement clauses are explained in detail. After all compliance requirements have been reviewed, the review personnel make a comprehensive judgment based on all review results. If all compliance requirements are compliant, the judgment is "compliant"; if some compliance requirements are non-compliant, the judgment is "non-compliant" with a detailed explanation of the non-compliant items, thus forming a compliance judgment conclusion for the development process.
[0084] Furthermore, when integrating the functional verification results with the compliance assessment conclusions to form the development process acceptance report, the acceptance manager first determines the fixed structure of the acceptance report, including four core parts: "Overview of Acceptance Task Execution," "Details of Functional Verification Results," "Compliance Assessment Conclusions," and "Follow-up Recommendations." In the "Details of Functional Verification Results" section, the verification results of each acceptance task are filled in sequentially according to the task order of the acceptance task list, clearly presenting the distribution of "passed" and "failed" tasks and the problem descriptions of the failed tasks. In the "Compliance Assessment Conclusions" section, the content of the compliance assessment conclusions is fully entered, including the overall compliance status and specific explanations of non-compliant items. In the "Overview of Acceptance Task Execution" section, the execution time, personnel, and overall execution progress of the acceptance tasks are briefly described. In the "Follow-up Recommendations" section, specific modification directions and time suggestions are proposed for the tasks that failed functional verification and the non-compliant items in the compliance review. Finally, the contents of each part are integrated in structural order, and the accuracy of the references to the functional verification results and compliance assessment conclusions is checked to ensure no omissions or errors, forming a complete and logically clear development process acceptance report.
[0085] In general, the process involves extracting the acceptance criteria recorded in each entry from the structured requirements library of the development process, classifying the acceptance criteria according to directions such as "functional integrity verification" and "performance stability verification", then converting each acceptance criterion into a specific acceptance task that can be directly executed, and finally arranging the tasks in the order of classification and marking the corresponding requirement item association information to obtain the acceptance task list of the development process.
[0086] In general, the testers perform the verification operations one by one according to the order of the acceptance task list. For functional tasks, they operate the software step by step and observe whether the response meets the expected results. For performance tasks, they monitor whether the response speed, resource consumption and other indicators meet the standards. Each completed task is recorded as "pass" or "fail". After all tasks are verified, all records are summarized to obtain the functional verification results of the development process.
[0087] In general, compliance reviewers first define the pre-defined compliance requirements, then review the actual situation of the software product for each requirement, record the compliance status of each requirement, and finally combine all the review results to determine whether it is "compliant" or "non-compliant", thus obtaining a compliance judgment conclusion for the development process.
[0088] In general, the process involves first determining the fixed structure of the acceptance report, then filling in the details section with the functional verification results in the order of the checklist, fully entering the compliance judgment conclusions, supplementing the acceptance execution time, personnel, and other general information, as well as improvement suggestions for the issues, and finally integrating all the content into a complete document to obtain the acceptance report for the development process.
[0089] like Figure 2The diagram shown is a functional block diagram of a software development system provided in an embodiment of the present invention.
[0090] The software development system 100 described in this invention can be installed in an electronic device. Depending on the functions implemented, the software development system 100 may include a requirements structuring module 101, a task topology construction module 102, a resource capability parsing module 103, a resource load mapping module 104, a status monitoring and synchronization module 105, and an acceptance confirmation module 106. The modules described in this invention can also be referred to as units, which are a series of computer program segments that can be executed by the processor of an electronic device and can perform a fixed function, stored in the memory of the electronic device.
[0091] In this embodiment, the functions of each module / unit are as follows: The requirement structuring module 101 is used to decompose the original requirement information provided by the user into a structured requirement library for the development process. The task topology construction module 102 is used to decompose the development work of the development process step by step based on the entries in the structured requirements library, obtain the dependency relationship of the task nodes in the development process, and link the task nodes based on the dependency relationship to obtain the task topology network of the software development. The resource capability analysis module 103 is used to perform multi-dimensional analysis of the roles and skill attributes of development team members during the development process to obtain a resource capability profile of the development process. The resource load mapping module 104 is used to associate and map the resource capability profile with the task nodes in the task topology network to obtain the resource load view of the development process. The status monitoring and synchronization module 105 is used to monitor the status of the task node in real time and synchronize the status changes to the resource load view to obtain the dynamic project status of the development process. The acceptance confirmation module 106 is used to confirm the functional compliance of the product in the development process based on the dynamic project status, and obtain the acceptance report of the development process.
[0092] In the several embodiments provided by this invention, it should be understood that the disclosed methods and systems can be implemented in other ways. For example, the system embodiments described above are merely illustrative; for instance, the division of modules is only a logical functional division, and other division methods may be used in actual implementation.
[0093] The modules described as separate components may or may not be physically separate. The components shown as modules may or may not be physical units; 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.
[0094] Furthermore, the functional modules in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or in the form of hardware plus software functional modules.
[0095] It will be apparent to those skilled in the art that the present invention is not limited to the details of the exemplary embodiments described above, and that the present invention can be implemented in other specific forms without departing from the spirit or essential characteristics of the present invention.
[0096] The embodiments of this application can acquire and process relevant data based on artificial intelligence technology. Artificial intelligence is the theory, method, technology, and application system that uses digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use that knowledge to obtain optimal results.
[0097] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit it. Although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can be made to the technical solutions of the present invention without departing from the spirit and scope of the technical solutions of the present invention.
Claims
1. A software development management method, characterized in that, The method includes: S1. Decompose the original requirements information provided by the user into a structured requirement library for the development process; S2. Based on the entries in the structured requirements library, the development work of the development process is broken down step by step to obtain the dependency relationship of the task nodes in the development process, and the task nodes are linked based on the dependency relationship to obtain the task topology network of the software development. S3. Analyze the roles and skill attributes of the development team members in the development process from multiple dimensions to obtain a resource capability profile of the development process; S4. Associate and map the resource capability profile with the task nodes in the task topology network to obtain the resource load view of the development process; S5. Monitor the status of the task nodes in real time and synchronize the status changes to the resource load view to obtain the dynamic project status of the development process; S6. Based on the dynamic project status, confirm the functional compliance of the product in the development process and obtain the acceptance report of the development process.
2. The software development management method as described in claim 1, characterized in that, The process of structurally decomposing the original requirements information provided by the user to obtain a structured requirements library for the development process includes: The original requirement information is analyzed from both business function dimensions to obtain the requirement units of the development process; The requirement units are prioritized and weighted to obtain the requirement sequence of the development process; Based on a pre-defined requirement item architecture, the requirement sequence is systematically constructed to obtain a structured requirement library for the development process.
3. The software development management method as described in claim 1, characterized in that, The process of breaking down the development work step by step based on the entries in the structured requirements library to obtain the dependencies between task nodes in the development process, and linking the task nodes based on the dependencies, results in the task topology network for software development, including: The items in the structured requirements library are decomposed hierarchically to obtain the task list for the development process; Dependency identification is performed on the logical relationships of the task list to obtain the dependency relationships of task nodes in the development process; Based on the dependencies, the development tasks in the task list are topologically connected to obtain the task topology network of the development process.
4. The software development management method as described in claim 3, characterized in that, The step of performing topological connections on the development tasks in the task list based on the dependencies to obtain the task topology network of the development process includes: The development tasks in the task list are uniquely identified to obtain the task nodes in the development process; Based on the order of the dependencies, directed links are made to the task node identifiers in the task list to obtain the task dependency graph of the development process. The task nodes and the directed links are integrated to obtain the task topology network of the development process.
5. The software development management method as described in claim 1, characterized in that, The process involves multi-dimensional analysis of the roles and skill attributes of development team members during the development process to obtain a resource capability profile of the development process, including: The responsibilities of the development team members during the development process are defined to obtain a role list for the development process. The proficiency levels of the development team members' skills are standardized and defined to obtain skill profiles for the development process; By integrating the character list with the skill profile, a development resource capability profile of the development process is obtained.
6. The software development management method as described in claim 1, characterized in that, The step of associating and mapping the resource capability profile with task nodes in the task topology network to obtain a resource load view of the development process includes: The matching degree between the skill attributes in the resource capability profile and the skill requirements of the task node is evaluated to obtain the task-resource matching relationship; Based on the task-resource matching relationship, tasks are assigned to the development team members to obtain the task allocation scheme for the development process; By associating the task allocation scheme with the task topology network, a resource load view of the development process is obtained.
7. The software development management method as described in claim 6, characterized in that, The process of evaluating the match between the skill attributes in the resource capability profile and the skill requirements of the task nodes to obtain the task-resource matching relationship includes: A standardized comparison is performed between the skill items of the skill attributes and the skill items of the skill requirements to obtain the skill matching pairs for the development process; Based on the required proficiency level of the skills, a grade difference analysis is performed on the actual proficiency level of the skill matching pairs to obtain the compliance rating of the development process. The calculation formula for the compliance rating is as follows: ; In the formula, The compliance rating is given. The actual proficiency level, The required level of proficiency for the aforementioned skill. The relevant years of experience in the skill profile mentioned above. The preset empirical compensation coefficient, The preset empirical benchmark value, This is the preset penalty coefficient for grade differences; The matching degree rating is weighted to obtain the task-resource matching relationship.
8. The software development management method as described in claim 1, characterized in that, The real-time monitoring of the status of the task nodes and the synchronization of status changes to the resource load view to obtain the dynamic project status of the development process include: The completion progress and status markers of the task nodes are periodically collected to obtain node status snapshots; Synchronize the node status snapshot with the status of the task nodes in the resource load view to obtain an updated resource load view; Based on the updated resource load view, the overall development progress is visualized, and the dynamic project status of the development process is obtained.
9. The software development management method as described in claim 1, characterized in that, Based on the dynamic project status, the functional compliance of the software product developed during the development process is confirmed, resulting in an acceptance report for the development process, including: Extract the acceptance criteria from the development process to obtain the acceptance task list; Based on the acceptance task list, the software product developed in the process is functionally verified to obtain the functional verification results. Based on preset compliance requirements, the software product is subjected to a compliance review to obtain a compliance determination conclusion. The functional verification results are integrated with the compliance judgment conclusions to form an acceptance report for the development process.
10. A software development system, characterized in that, The system includes: The requirement structuring module is used to decompose the original requirement information provided by users into a structured requirement library for the development process. The task topology construction module is used to decompose the development work of the development process step by step based on the entries in the structured requirements library, obtain the dependency relationship of the task nodes in the development process, and link the task nodes based on the dependency relationship to obtain the task topology network of the software development. The resource capability analysis module is used to perform multi-dimensional analysis of the roles and skill attributes of development team members during the development process, and obtain a resource capability profile of the development process. The resource load mapping module is used to associate and map the resource capability profile with the task nodes in the task topology network to obtain the resource load view of the development process. The status monitoring and synchronization module is used to monitor the status of the task nodes in real time and synchronize the status changes to the resource load view to obtain the dynamic project status of the development process. The acceptance verification module is used to verify the functional compliance of the product in the development process based on the dynamic project status, and to obtain the acceptance report of the development process.