Project whole life cycle integrated management method and system based on digital main line technology
By using a project management method based on digital thread technology, a project task decomposition structure tree and a temporal dependency network are constructed, which solves the problems of information dispersion and resource waste in traditional project management and realizes the scientific and efficient nature of project management.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- SICHUAN CHIXIA DIGITAL INTELLIGENCE TECHNOLOGY CO LTD
- Filing Date
- 2026-03-18
- Publication Date
- 2026-06-02
AI Technical Summary
Traditional project management methods struggle to effectively integrate and link information and processes throughout the entire project lifecycle, leading to task scheduling conflicts, resource waste, and low management efficiency.
Based on digital lead-ahead technology, by acquiring the original planning documents from the project initiation phase, a project task decomposition structure tree and a task temporal dependency network are constructed. Combined with resource allocation, an initial digital lead-ahead model of the project is generated, thereby achieving scientific task management and accurate resource allocation.
It improves the scientific nature and accuracy of project task management, avoids task scheduling conflicts and resource waste, and achieves real-time and efficient project management.
Smart Images

Figure CN122134293A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of project management technology, and more specifically, to a method and system for integrated management of the entire project lifecycle based on digital thread technology. Background Technology
[0002] In the field of project management, traditional management methods often face numerous challenges. Throughout the entire project lifecycle, from initiation to closure, a large amount of complex information and processes are involved. Data generated at different stages is independent and scattered, making it difficult to form an organic whole. For example, the project initiation phase generates project planning documents containing key information such as project scope, timeline, and resource budget. However, this information is usually in document form and lacks effective integration and correlation.
[0003] During project execution, task management relies heavily on manual decomposition and assignment, making it difficult to ensure the rationality and comprehensiveness of task breakdown. Furthermore, the temporal dependencies between tasks are often described through simple tables or text, lacking intuitiveness and accuracy, easily leading to task scheduling conflicts or omissions. For resource allocation, traditional methods typically rely on rough estimates based on experience, failing to accurately match the actual resource needs of each task, resulting in frequent resource waste or shortages. Moreover, the lack of a unified management model makes it difficult for project managers to grasp the overall project status and the relationships between various elements in real time, hindering timely and scientifically sound decision-making and impacting the smooth progress and ultimate success of the project. Summary of the Invention
[0004] In view of this, the purpose of this application is to provide a method and system for integrated management of the entire project lifecycle based on digital thread technology.
[0005] In conjunction with the first aspect of this application, a project lifecycle integrated management method based on digital thread technology is provided, applied to a project lifecycle integrated management system based on digital thread technology, the method comprising:
[0006] Obtain the set of original project planning documents generated during the project initiation phase. The set of original project planning documents includes project scope boundary description units, project timeline baseline units, and project resource budget allocation units.
[0007] Based on the project scope boundary description unit, the project task structure is decomposed to generate a project task decomposition structure tree with hierarchical belonging relationship. The project task decomposition structure tree consists of multiple task node units, each task node unit corresponds to a specific project work package and carries the identification code of the specific project work package.
[0008] Based on the project task decomposition structure tree and the project timeline baseline unit, a task temporal dependency network is constructed. The task temporal dependency network includes the predecessor and successor logical edges between the task node units and the estimated duration parameters of the task node units.
[0009] The identifier of the task node unit is matched with the resource requirements of the project resource budget allocation unit to obtain the resource allocation quota set corresponding to the task node unit. The resource allocation quota set includes human resource quota unit, material resource quota unit and financial resource quota unit.
[0010] The initial digital mainline model of the project is generated by integrating the task time-series dependency network and the resource allocation quota set. The initial digital mainline model of the project takes the task node unit as the core carrier. The task node unit encapsulates the identification code, the estimated duration parameter and the resource allocation quota set.
[0011] In conjunction with the second aspect of this application, a project lifecycle integrated management system based on digital thread technology is provided. The project lifecycle integrated management system based on digital thread technology includes a machine-readable storage medium and a processor. The machine-readable storage medium stores machine-executable instructions. When the processor executes the machine-executable instructions, the project lifecycle integrated management system based on digital thread technology implements the aforementioned project lifecycle integrated management method based on digital thread technology.
[0012] In conjunction with the third aspect of this application, a computer-readable storage medium is provided, wherein computer-executable instructions are stored in the computer-readable storage medium, and when the computer-executable instructions are executed, the aforementioned integrated project lifecycle management method based on digital thread technology is implemented.
[0013] Combining any of the above aspects, by acquiring the original project planning document set from the project initiation phase and decomposing the project task structure based on the project scope boundary description units, a hierarchical project task decomposition structure tree is generated. This tree defines each specific project work package. Based on the project task decomposition structure tree and the project timeline baseline units, a task sequence dependency network is constructed, intuitively presenting the preceding and succeeding logical relationships and estimated duration parameters between task nodes. This effectively avoids task scheduling conflicts and omissions, improving the scientific nature and accuracy of project task management. The identification codes of task node units are matched with project resource budget allocation units to obtain a precise set of resource allocation quotas, achieving accurate resource allocation and avoiding resource waste and shortages. Finally, the task sequence dependency network and resource allocation quota set are integrated to generate an initial digital master model of the project. With task node units as the core carrier, relevant information is encapsulated, enabling project managers to grasp the overall status of the project and the relationships between various elements in real time and comprehensively, greatly improving the efficiency and success rate of project management. Attached Figure Description
[0014] Figure 1 This application provides a flowchart illustrating the integrated project lifecycle management method based on digital thread technology. Detailed Implementation
[0015] Figure 1 This application provides a schematic flowchart of a project lifecycle integrated management method based on digital thread technology, which includes the following details:
[0016] Step S110: Obtain the set of original project planning documents generated during the project initiation phase. The set of original project planning documents includes project scope boundary description units, project timeline baseline units, and project resource budget allocation units.
[0017] The following will elaborate on the specific implementation of this method using the whole-process management of an interior decoration project for a commercial complex (hereinafter referred to as "this project"). This project covers the entire process from conceptual design, construction drawing refinement, material procurement, on-site construction to final acceptance.
[0018] In this embodiment, for an interior decoration project of a commercial complex, during the project initiation phase, all initial planning documents are first compiled to form an original project planning document set, serving as the data foundation for constructing the project's digital framework. The project scope boundary description unit is specifically represented by a "Scope of Interior Decoration Project" signed and confirmed by the client. This specification defines the project boundaries in detail. For example, it clarifies that the project includes the floor, wall, and ceiling decoration of the public areas on the first to third floors of the mall, waterproofing and basic renovation of the kitchen in the third-floor catering area, and the modification of lighting and socket wiring on all floors. Simultaneously, it explicitly excludes personalized interior decoration of shops, modification of the main fire sprinkler system, and replacement of the central air conditioning unit, defining these as outside the project scope. The project timeline baseline unit is represented by a structured project master schedule document, such as a formatted file generated using professional schedule management software. This document clearly states the overall start date as "March 1, 2024" and the overall delivery date as "August 30, 2024," and preliminarily divides the project into milestone dates for major stages such as design finalization, material ordering, demolition work, concealed works, surface layer construction, and final acceptance. The project resource budget allocation unit is a detailed "Project Budget Allocation Table," typically in tabular format. It divides the total budget by resource category, specifically including fields for total human resource budget (e.g., total man-days for carpentry, electrical work, and painting), total material resource budget (e.g., total number of sheets of plasterboard of a specified type, total meters of light steel keel, total square meters of tiles, and total liters of latex paint), and total financial resource budget (e.g., total amount of unforeseen expenses and total design service fees). All of the above documents are stored uniformly in the project cloud document library, and their core structured data is extracted through a document management system.
[0019] Step S120: Perform project task structure decomposition processing based on the project scope boundary description unit to generate a project task decomposition structure tree with hierarchical affiliation. The project task decomposition structure tree consists of multiple task node units, each task node unit corresponds to a specific project work package and carries the identification code of the specific project work package.
[0020] The core of this step lies in transforming the unstructured text in the project scope boundary description unit into a structured, executable task decomposition system. This is achieved through the following sub-steps.
[0021] Step S121: Parse the project objective statement text in the project scope boundary description unit, and extract the key deliverable noun phrases and the compositional relationship phrases between the key deliverable noun phrases in the project objective statement text.
[0022] In this embodiment, a natural language processing engine is first invoked to perform syntactic analysis and dependency parsing on the "Project Scope Description" section of the "Interior Decoration Engineering Scope Specification". For example, from the text "The final deliverable of this project is the public area on the first to third floors of a shopping mall with operational conditions, which mainly consists of the atrium area on the first floor, the corridor areas on the first to third floors, the catering kitchen area on the third floor, and related electrical systems", key deliverable noun phrases such as "atrium area on the first floor", "corridor area on the first floor", "catering kitchen area on the third floor", and "electrical system" are extracted through named entity recognition and relation extraction technology. At the same time, by analyzing structures such as "composed of..." in the sentence, compositional relationship phrases between deliverables are identified. For example, the "atrium area on the first floor" is composed of "atrium floor", "atrium walls", and "atrium ceiling", and the "electrical system" is composed of "lighting circuit", "socket circuit", and "distribution box", thus initially constructing the hierarchical inclusion relationship between deliverables.
[0023] Step S122: Construct an initial deliverable hierarchy diagram based on key deliverable noun phrases and composition relationship phrases. The root node of the initial deliverable hierarchy diagram corresponds to the final project deliverable, and the leaf nodes of the initial deliverable hierarchy diagram correspond to the smallest granularity deliverable.
[0024] Based on the information extracted in step S121, a directed acyclic graph (DAG) is constructed, namely the initial deliverable hierarchy diagram. The root node of this graph is the final project deliverable, namely "the public areas on the first to third floors of the shopping mall, ready for operation." Below the root node, the first-level child nodes are the core components of this area, such as "first-floor public area," "second-floor public area," "third-floor public area," and "electrical system." Continuing to decompose downwards, the "first-floor public area" node generates child nodes such as "first-floor atrium area" and "first-floor corridor area." The decomposition process continues until a node represents a clearly defined, independently verifiable, and clearly completed unit, such as "marble paving of the first-floor atrium floor" or "water tightness test record of the third-floor kitchen waterproofing layer." These become leaf nodes. This structure diagram is stored in memory as a graphical data structure.
[0025] Step S123: For the smallest granularity deliverable corresponding to each leaf node of the initial deliverable hierarchy diagram, call the preset work package generation rule base to perform task granularity division processing, and convert the smallest granularity deliverable into a specific project work package containing specific operation actions.
[0026] The leaf nodes generated in step S122 still fall under the category of "deliverables," while project execution requires "actions." Therefore, a pre-configured work package is invoked to generate a rule base. This rule base is a collection of mapping relationships built based on construction specifications in the decoration industry. For example, for the leaf node "Marble paving in the first-floor atrium," the corresponding rule in the rule base, "Marble paving," should be refined into a work package: "Base layer cleaning and wetting," "Marking and positioning," "Laying marble," and "Seaming and curing." These four specific operational actions are encapsulated into four independent specific project work packages. Similarly, for the leaf node "Water tightness test record of the third-floor kitchen waterproof layer," the rule base transforms it into a specific project work package: "Clean the water storage area," "Inject water to the specified height," "Regularly check and record the water level," and "Drain and check the base layer." Through this step, abstract deliverables are transformed into assignable and traceable specific operational activities.
[0027] Step S124: Assign a globally unique identifier code to each specific project work package. The identifier code includes a project code prefix field, a hierarchy path field, and a sequence number field. The hierarchy path field is used to record the position coordinates of the specific project work package in the initial deliverable hierarchy diagram.
[0028] To ensure that each work package can be uniquely identified and traced throughout its entire lifecycle, an identification code is generated for each specific project work package. Taking the "Marble Laying in the First Floor Atrium" work package as an example, its identification code can be designed as "COMM-INTERIOR-WBS-02.01.01.01-003". Here, "COMM-INTERIOR" is the project code prefix field; "WBS" indicates that this is a work breakdown structure code; "02.01.01.01" is the hierarchical path field, representing the coordinates of the project in the initial deliverable hierarchy diagram. For example, "02" represents "First Floor Public Area", "01" represents "First Floor Atrium Area", "01" represents "Atrium Floor", and "01" represents "Marble Laying Deliverable". This hierarchical path field ensures traceability from the macro to the micro level of the project; "003" is the sequence number field, indicating the order of this work package among all related work in the "First Floor Atrium Floor" project. This code is written into the work package's data structure.
[0029] Step S125: The specific project work packages are attached level by level according to the parent-child relationship of the initial deliverable hierarchy diagram to generate a project task decomposition structure tree. The work scope of the specific project work package corresponding to the upper-level task node unit in the project task decomposition structure tree covers the sum of the work scopes of the specific project work packages corresponding to all its lower-level sub-task node units.
[0030] Based on the parent-child relationships in the initial deliverable hierarchy diagram generated in step S122, and the hierarchical path field in the identifier code generated in step S124, each specific project work package generated in step S123 is treated as a leaf node and attached from bottom to top. For example, four work packages, namely "First Floor Atrium Ground Base Cleaning," "First Floor Atrium Ground Line Positioning," "First Floor Atrium Ground Marble Laying," and "First Floor Atrium Ground Joint Sealing and Maintenance," are attached to the parent node "First Floor Atrium Ground Marble Laying Delivery." "First Floor Atrium Ground Marble Laying Delivery," along with nodes such as "First Floor Atrium Wall Wood Veneer Installation Delivery," are attached to the higher-level node "First Floor Atrium Area Completion." This ultimately forms a complete tree structure with the root node representing the entire project, branches representing deliverables at all levels, and leaf nodes representing specific project work packages—a project task decomposition structure tree. Each node in this tree, regardless of its level, is defined as a task node unit, where leaf nodes correspond to specific project work packages, and the parent node represents the sum of the work scopes of all its child work packages.
[0031] Step S126: Traverse and scan the task node units in the project task decomposition structure tree to detect whether there are task node units with duplicate identifier codes and whether there are blank node units that have not been assigned a specific project work package.
[0032] To ensure the quality of the project task decomposition structure tree, a traversal algorithm is initiated, scanning all task node units using either depth-first or breadth-first search. First, the identifier codes of all nodes are added to a hash set. If a code already exists in the set during the addition process, it is considered a duplicate identifier code. Second, each parent node is checked to see if it has at least one child node; for leaf nodes, it is checked whether they are associated with a specific project work package. If a node is found to be structurally in a leaf position but is not associated with any specific project work package definition, it is considered a blank node unit. For example, if the node "Second Floor Corridor Area Wall Latex Paint" has no child nodes and is not associated with any specific work content, it is marked as a blank node unit.
[0033] Step S127: If a task node unit with duplicate identifier codes is detected, the duplicate identifier codes are re-encoded according to the project code prefix field and the hierarchical path field to ensure that each task node unit has a unique identifier code.
[0034] If duplicate coding is detected in step S126, for example, two work packages located under "First Floor Atrium Floor" and "First Floor Corridor Floor" respectively incorrectly obtain the same hierarchical path field "02.01.01.01", recoding will be automatically triggered. The complete hierarchical paths of the two work packages will be compared to confirm their true affiliation. For the work package under "First Floor Corridor Floor", its correct hierarchical path should be "02.02.01.01". The incorrect "02.01.01.01" field in the work package's identifier coding will be corrected to "02.02.01.01", and its index in the project task breakdown structure tree will be updated. This process ensures that the identifier code of each task node unit in the project task breakdown structure tree is globally unique.
[0035] Step S128: If a blank node cell is detected, a supplementary work package is automatically generated and filled into the blank node cell based on the position coordinates of the blank node cell in the initial deliverable hierarchy diagram and the content semantics of the specific project work package of the adjacent node cell through the completion template.
[0036] For the blank node units found in step S126, such as the blank node marked "Second Floor Corridor Area Wall Latex Paint", based on its position coordinates, find its parent node "Second Floor Corridor Area" and its sibling adjacent nodes in the initial deliverable hierarchy diagram, such as "Second Floor Corridor Area Floor Tile Laying". Analyze the semantics of the work package content of the adjacent nodes, which includes a series of actions such as "floor leveling", "applying interface agent", and "laying tiles". Call the default template for "Wall Latex Paint Construction" in the completion template library. This template contains work packages: "Wall Base Treatment", "Apply Putty Two Coats and Sand", "Apply Primer One Coat", and "Apply Topcoat Two Coats". Fill the "Second Floor Corridor Area Wall Latex Paint" node with the automatically generated supplementary work packages, making it a non-blank node unit.
[0037] Step S129: Perform structural stability assessment on the project task decomposition structure tree after recoding and filling in the supplementary work package, and calculate the decomposition granularity uniformity index of each level of task node unit in the project task decomposition structure tree.
[0038] To ensure the quality of the project task decomposition structure tree, it is necessary to assess the uniformity of its decomposition granularity. First, the entire project task decomposition structure tree is traversed, collecting the specific project work packages corresponding to all leaf nodes. For each specific project work package, its work content description text is extracted, and its required workload complexity score is estimated using natural language processing techniques. This score is based on the industry-standard weights of verbs and nouns in the work package. For example, "laying marble" might receive a complexity score P, and "applying interface agent" might receive a complexity score Q. Then, for each non-leaf node's parent node, the root mean square error (RMSE) of the complexity scores of all its leaf nodes is calculated. The MSE of all parent nodes is then weighted and averaged to obtain the uniformity index U of the decomposition granularity of the entire project task decomposition structure tree. The smaller the U value, the more uniform the work package decomposition granularity of each branch in the project task decomposition structure tree, and the lower the management difficulty.
[0039] Step S1210: Compare the decomposition granularity uniformity index with the preset granularity threshold range. If the decomposition granularity uniformity index exceeds the granularity threshold range, recursively adjust the task node units in the project task decomposition structure tree that are too coarse or too fine in decomposition granularity until the decomposition granularity uniformity index falls within the granularity threshold range, and obtain the final project task decomposition structure tree.
[0040] The calculated uniformity index U is compared with a preset granularity threshold range. Assume the preset granularity threshold range is from the lower limit L to the upper limit H. If U is less than L, it indicates that the entire project task decomposition structure tree is too finely decomposed, resulting in excessively uniform granularity and potentially too many management nodes. If U is greater than H, it indicates extremely uneven decomposition granularity. For example, if the complexity scores of work packages under the "Electrical Systems" branch are generally much higher than those under the "Wall Decoration" branch, then the uniformity index U is determined to exceed the upper limit H. In this case, recursive adjustment processing is initiated. For the "Electrical Systems" branch, the child work packages under its parent node are further subdivided. For example, "Cable Laying" is subdivided into finer-grained work packages such as "Cable Tray Installation," "Conduit Laying," and "Wire Pulling" to reduce the complexity score of individual work packages. The uniformity index U is recalculated until U falls within the threshold range formed by L and H. The project task decomposition structure tree at this point is the final project task decomposition structure tree.
[0041] Step S130: Construct a task temporal dependency network based on the project task decomposition structure tree and the project timeline baseline unit. The task temporal dependency network includes the predecessor and successor logical edges between task node units and the estimated duration parameters of task node units.
[0042] This step aims to combine a static task decomposition structure with a dynamic time baseline to construct a network that reflects the logical order and temporal constraints between tasks. This is accomplished through the following sub-steps.
[0043] Step S131: Traverse all task node units in the project task decomposition structure tree, and extract the identifier code and the work content description text of the specific project work package for each task node unit.
[0044] Starting from the final project task decomposition structure tree generated in step S1210, a depth-first traversal algorithm is used to visit every task node unit in the tree, regardless of whether it is a parent node or a leaf node. For each visited node, its core attributes are extracted: an identifier code as a unique identifier, and a work content description text describing the work content of that node. For leaf nodes, this text is a description of the specific project work package; for parent nodes, its work content description text is a summary description of the work of all its child nodes.
[0045] Step S132: Perform semantic parsing on the work content description text to identify the input dependency words and output delivery words implicit in the work content description text. The input dependency words are used to represent the preconditions required to start the specific project work package, and the output delivery words are used to represent the intermediate products produced after the specific project work package is completed.
[0046] Using natural language processing techniques, particularly dependency parsing and semantic role labeling, the text describing the work content of each task node unit is deeply analyzed. Taking the work package "Laying marble on the ground floor atrium floor" as an example, its text is analyzed. The phrase "layout and positioning results" in "based on the layout and positioning results" is identified as an input dependency, meaning that the intermediate product "layout and positioning results" must exist before this work package can be started. Simultaneously, the phrase "marble floor" in "Complete marble laying and form a marble floor" is identified as an output deliverable, indicating that the intermediate product "marble floor" will be produced upon completion of this work package, which can be used by subsequent "finished product protection" or "grouting" work packages. For each task node unit, its identified set of input dependency terms and set of output deliverable terms are stored in a structured manner.
[0047] Step S133: Based on the matching relationship between input dependency vocabulary and output delivery vocabulary, establish a pre- and post-order logical edge between the identifier codes of different task node units. The direction of the pre- and post-order logical edge is from the task node unit that produces intermediate products to the task node unit that requires pre-conditions.
[0048] A global match is performed between the output delivery vocabulary set and the input dependency vocabulary set of all task node units. For example, in step S132, it is identified that the work package "laying marble on the ground floor atrium" requires "layout positioning result" as input. Simultaneously, while traversing other nodes, it is found that the output delivery vocabulary set of the work package "layout positioning on the ground floor atrium" contains "layout positioning result". Therefore, a predecessor-successor logical edge is established between the identifier codes of these two work packages. The starting point of the edge is the identifier code of the work package "layout positioning on the ground floor atrium", and the ending point is the identifier code of the work package "laying marble on the ground floor atrium", indicating that the former is the predecessor of the latter. Through this method, all input dependency vocabulary is traversed to find the corresponding source of output delivery vocabulary, ultimately constructing a directed logical relationship graph.
[0049] Step S134: Obtain the overall project start time and overall project delivery time contained in the project timeline baseline unit, assign the overall project start time to the starting task node unit without in-degree predecessor and successor logical edges, and assign the overall project delivery time to the ending task node unit without out-degree predecessor and successor logical edges.
[0050] The overall start and delivery dates of the project are extracted from the baseline units of the project timeline. Then, the logical relationship graph constructed in step S133 is analyzed, calculating the in-degree (the number of edges pointing to that node) and out-degree (the number of edges originating from that node) of each node. All task nodes with an in-degree of zero, meaning they do not depend on any other tasks, are marked as starting task nodes, and the overall project start date is assigned to these nodes. For example, work packages such as "Site Inspection" or "Original Site Survey" might be marked as starting nodes. All task nodes with an out-degree of zero, meaning no subsequent tasks depend on them, are marked as ending task nodes, and the overall project delivery date is assigned to these nodes, such as work packages like "Final Cleaning" or "Completion Acceptance."
[0051] Step S135: Perform workload estimation processing on the work content description text of each task node unit, and generate the estimated duration parameter for each task node unit by combining the corresponding human resource quota unit and material resource quota unit in the project resource budget allocation unit.
[0052] For each task node, its work content description text is parsed again. Taking the work package "Painting latex paint on the walls of the first-floor corridor area" as an example, its work content description is "Painting two coats of latex paint on a wall area of A square meters." From the project resource budget allocation unit, the human resource quota unit allocated to the corresponding task of this work package is queried, for example, B painters are allocated. At the same time, the material resource quota unit is queried, for example, the rated work efficiency of each painter per day is C square meters. Then, the theoretical working hours of this work package can be calculated using the formula "Total working hours required equals the painting area divided by the total daily efficiency," where the total daily efficiency equals the number of painters multiplied by the daily efficiency of each person. The theoretical working hours are then converted into an estimated duration parameter in working days, for example, an estimated duration parameter of D days. For work packages involving complex processes, the synergistic effect of human and material resources needs to be comprehensively considered.
[0053] Step S136: Based on the overall start time and estimated duration parameters of the starting task node unit, calculate the earliest start time and earliest finish time of each task node unit in a forward manner. The earliest start time depends on the maximum value among the earliest finish times of all preceding task node units of that task node unit.
[0054] Starting with the initial task node unit that has already been assigned the overall project start time, a forward traversal calculation is performed. For any task node unit X, its earliest start time is equal to the maximum of the earliest finish times of all its predecessor task node units. If X has no predecessor tasks, then its earliest start time is the overall project start time. Its earliest finish time is equal to its earliest start time plus its own estimated duration parameter. For example, if the earliest finish time of task node unit A (a predecessor task) is day E, and the earliest finish time of task node unit B (another predecessor task) is day F, and F is greater than E, then the earliest start time of task node unit X is day F. If the estimated duration of X is G days, then its earliest finish time is day F plus day G. The calculation process proceeds layer by layer along the logical edges until the earliest time of all nodes has been calculated.
[0055] Step S137: Based on the overall project delivery time and estimated duration parameters of the completed task node unit, calculate the latest start time and latest completion time of each task node unit in reverse. The latest completion time depends on the minimum value among the latest start times of all subsequent task node units of that task node unit.
[0056] Starting with the last task node unit that has been assigned the overall project delivery time, the calculation proceeds in reverse traversal. For any task node unit Y, its latest completion time is equal to the minimum of the latest start times of all its successor task node units. If Y has no successor tasks, then its latest completion time is the overall project delivery time. Its latest start time is equal to its latest completion time minus its estimated duration parameter. For example, if the latest start time of task node unit C (a successor task) is day H, and the latest start time of task node unit D (another successor task) is day I, where I is less than H, then the latest completion time of task node unit Y is day I. If the estimated duration of Y is J days, then its latest start time is day I minus day J. The calculation process proceeds layer by layer in the reverse direction of the logical edges until the latest times of all nodes have been calculated.
[0057] Step S138: Calculate the time difference between the latest start time and the earliest start time of each task node unit as the time difference reserve of that task node unit, and mark the task node units with a time difference reserve of less than a preset time difference threshold as critical path node units.
[0058] For each task node, the difference between its latest start time and its earliest start time is the float reserve for that task node. The float reserve reflects the task's leeway in the schedule. A float threshold is preset, which can be a very small constant, such as K days. All task node units are iterated through, and those nodes with a float reserve less than the preset float threshold K days are marked as critical path nodes. These nodes have little or no buffer time in their scheduling; any delay may cause a delay in the overall project duration.
[0059] Step S139: Extract all critical path node units and their preceding and succeeding logical edges to construct a critical path sub-network. The total duration of the critical path sub-network is equal to the difference between the overall project start time and the overall project delivery time.
[0060] Extract all task nodes marked as critical path nodes, along with the preceding and succeeding logical edges connecting these nodes, from the entire task time dependency network. These nodes and edges constitute a subnetwork, the critical path subnetwork. This subnetwork starts from a certain initial task node, passes through a series of critical path nodes, and finally reaches a certain final task node. Calculate the sum of the estimated duration parameters of all critical path nodes on this subnetwork. The result should be strictly equal to the difference between the overall project start time and the overall project delivery time, i.e., the total project duration. This verifies the correctness of the critical path.
[0061] Step S1310: Integrate the critical path sub-network with the remaining non-critical path node units to generate a complete task time dependency network. Each task node unit in the task time dependency network is associated with an identifier code, an estimated duration parameter, the earliest start time, the latest start time, and the time difference reserve.
[0062] The critical path subnetwork is merged with all other nodes not marked as critical path nodes according to the logical relationships established in step S133, forming a complete task time dependency network containing all task node units. In this network, the data structure of each task node unit is enriched and updated, not only including the original identifier encoding and estimated duration parameters, but also adding the earliest start time, latest start time, and time difference reserve calculated through steps S136, S137, and S138. Thus, a dynamic task network containing the time dimension is constructed.
[0063] Step S140: Match the identifier code of the task node unit with the resource requirements of the project resource budget allocation unit to obtain the resource allocation quota set corresponding to the task node unit. The resource allocation quota set includes human resource quota unit, material resource quota unit and financial resource quota unit.
[0064] This step aims to refine, break down, and match the total project budget to each specific task node. This is accomplished through the following sub-steps.
[0065] Step S141: Parse the project resource budget allocation unit and extract the total budget entries divided by resource type in the project resource budget allocation unit. The total budget entries include the total human resources budget field, the total material resources budget field, and the total financial resources budget field.
[0066] The initial project resource budget allocation unit, namely the "Project Budget Allocation Table," is structured and parsed. Key aggregate data is extracted. The total human resource budget field is specified as follows: total man-days for carpenters (M1), total man-days for electricians (M2), total man-days for painters (M3), and total man-days for general laborers (M4). The total material resource budget field is specified as follows: total number of sheets of specified brand gypsum board (N1), total meters of light steel keel (N2), total meters of a certain type of electrical wire (N3), and total liters of Dulux latex paint (N4). The total financial resource budget field is specified as follows: total project management fee (P1), total design fee (P2), and total unforeseen expenses (P3). These aggregate items constitute the total project resource pool.
[0067] Step S142: Traverse all task node units in the project task decomposition structure tree and obtain the specific project work package and estimated duration parameters for each task node unit.
[0068] Starting from the final project task decomposition structure tree, traverse each leaf node, i.e., each specific project work package. For each specific project work package, obtain its work content description text and the estimated duration parameter associated with it from the task temporal dependency network constructed in step S1310. For example, for the work package "painting latex paint on the walls of the first-floor corridor area", obtain its estimated duration parameter as Q days.
[0069] Step S143: Based on the work type label of each specific project work package, call the preset resource demand estimation model to perform resource demand prediction processing, and generate the demand intensity coefficient of human resources corresponding to the total human resources budget field and the list of material resource demand types corresponding to the total material resources budget field for that specific project work package.
[0070] Each specific project work package is pre-labeled with a work type tag, such as "carpentry," "electrical work," "painting," and "masonry." For the work package "painting the walls of the first-floor corridor area with latex paint," its work type tag is "painting." A pre-defined resource requirement estimation model for "painting" work is invoked. This model is trained based on historical project data. For human resources, the model outputs a demand intensity coefficient; for example, R painters are needed to paint 100 square meters of walls simultaneously. For material resources, the model outputs a list of required types; for example, this work package requires "latex paint," "rollers," and "masking tape," and further refines this by matching specific material types from the total material resource budget field, such as "Dulux latex paint" corresponding to the required type "latex paint." The model's role here is to intelligently recommend resource input ratios and types based on the work package attributes.
[0071] Step S144: Multiply the demand intensity coefficient by the estimated duration parameter to obtain the total human resource demand of the task node unit. The human resource demand is measured in person-days.
[0072] Multiply the "demand intensity coefficient" obtained in step S143 by the "estimated duration parameter" of the task node unit. Assume the estimated duration parameter for the "painting the walls of the first-floor corridor area" work package is Q days, and the model outputs a demand intensity coefficient of S painters per day. Then, the total human resource requirement for this work package is S multiplied by Q person-days. This value represents the total workload required to complete the work package and is tagged as the requirement for the total human resource budget field, i.e., "total painter person-days". For example, if S is 2 and Q is 3, then this work package requires 6 painter person-days.
[0073] Step S145: Based on the material types in the demand list and the unit time consumption rate of the material type, calculate the total material resource demand of the task node unit within the estimated duration parameter.
[0074] For the material requirement list generated in step S143, such as "latex paint" and "roller", for "latex paint", based on its construction process, the standard consumption quota library is consulted to obtain its consumption rate per unit time (day). Assume that each painter consumes T liters of latex paint per day. Combining this with the daily manpower input of S people calculated in step S144, the total daily latex paint consumption for this work package is S multiplied by T liters. Multiplying this by the estimated duration parameter Q days yields the total material resource requirement for latex paint for the entire duration of the work package, for example, U liters. This total is recorded as the consumption requirement for the "Dulux latex paint" material resource budget field for this work package.
[0075] Step S146: Decompose the funding and resource requirements of each task node unit. The funding and resource requirements include the human resource cost and the material procurement cost. The human resource cost is calculated based on the total human resource demand and the preset unit price of human resources. The material procurement cost is calculated based on the total material resource demand and the unit price of materials.
[0076] The funding resource requirements stem from labor costs and material costs. First, obtain the preset labor unit price from the project resource budget allocation unit; for example, the labor unit price for a painter is V yuan per person-day. Multiply the total human resource requirement calculated in step S144 by the labor unit price V to obtain the labor cost portion of the work package, for example, 6 multiplied by V yuan. Second, obtain the material unit price; for example, the unit price of latex paint is W yuan per liter. Multiply the total material resource requirement calculated in step S145 by the material unit price W to obtain the material procurement cost portion of the work package, for example, U multiplied by W yuan. The total funding resource requirement for this work package is the sum of the labor cost portion and the material procurement cost portion. In addition, other direct costs such as the cost of small machinery allocated to this work package may also need to be considered.
[0077] Step S147: Summarize the total human resource demand, total material resource demand, and financial resource demand of all task node units to generate a project total resource demand forecast vector.
[0078] After calculating the resource requirements for all task nodes, the results are aggregated upwards level by level. The "number of painter days" for all work packages are summed to obtain the total painter day requirement for the entire project, X1; the "Dulux latex paint" requirement for all work packages is summed to obtain the total latex paint requirement for the entire project, X2 liters; and the funding requirements for all work packages are summed to obtain the total direct cost of the project, X3 yuan. This generates a multi-dimensional project total resource requirement forecast vector, such as [X1, X2, X3, ...], where each dimension represents the total forecast requirement for a particular resource.
[0079] Step S148: Compare and analyze the project's total resource demand forecast vector with the total human resources budget field, total material resources budget field, and total financial resources budget field in the project resource budget allocation unit, and calculate the overspending ratio or surplus ratio of each resource type.
[0080] The project's total resource requirement forecast vector generated in step S147 is compared one by one with the total budget items in the project resource budget allocation unit extracted in step S141. For example, the total demand for painters X1 is compared with the total budget for painters M3. The overspending ratio or surplus ratio is calculated using the formula "(X1 minus M3) divided by M3". If the result is positive, it indicates that the overspending ratio is that value; if it is negative, it indicates that the surplus ratio is the absolute value of that value. Similarly, the latex paint demand X2 is compared with the budget N4, and a comprehensive comparative analysis is performed on the total direct cost X3 and the total project management fee P1, among other budget fields.
[0081] Step S149: If the overspending ratio of a certain resource type exceeds the preset tolerance range, the resource balancing optimization process is initiated. The estimated duration parameter of the task node unit is extended or the parallelism of multiple task node units is adjusted. The total demand for human resources, material resources and financial resources after adjustment is recalculated until the overspending ratio falls within the tolerance range.
[0082] Suppose step S148 finds that the total demand for painters, X1, exceeds the budget M3, and the overspending percentage exceeds the preset tolerance range, for example, 5%. At this point, the resource leveling optimization process is initiated. There are two optimization strategies. First, extend the project duration: appropriately extend the estimated duration parameters of some non-critical path painting work packages, for example, extending the duration of the "three-story corridor wall repair" work package from Y days to Z days, thereby reducing the peak demand for painters per unit time, but the total man-day demand remains unchanged. This method cannot reduce the total demand X1. Second, adjust the parallelism: analyze the task time-series dependency network and adjust multiple painting work packages that were originally being constructed in parallel to be constructed at off-peak times, but again, the total man-days remain unchanged. To reduce the total demand X1, adjustments need to be made at the root, such as optimizing the construction process to reduce the demand intensity coefficient S, but this constitutes a design change. Alternatively, some work packages can be outsourced, but this involves replacing resource types. Through multiple iterative adjustments (which may involve adjusting the resource input combination of work packages), the resource requirements are recalculated until the overspending percentage of all resource types falls within the preset tolerance range.
[0083] Step S1410: The final total human resource demand, final total material resource demand, and final financial resource demand of each task node unit determined after the resource balancing optimization process are encapsulated into human resource quota units, material resource quota units, and financial resource quota units, and a resource allocation quota set bound to the identification code is generated.
[0084] After optimization in step S149, the final resource consumption of each task node unit is determined. For example, for the work package "painting latex paint on the walls of the first-floor corridor area," the final total human resource requirement after optimization is determined to be S multiplied by Q person-days, the final total material resource requirement is determined to be U liters, and the final financial resource requirement is determined to be V multiplied by S multiplied by Q plus W multiplied by U yuan. These final values are then encapsulated into human resource quota units, material resource quota units, and financial resource quota units, respectively. Then, using the identifier code of the task node unit of this work package as the key, these three quota units are combined into a resource allocation quota set and persistently stored. At this point, each task node unit has a globally balanced and clearly defined upper limit for resource consumption.
[0085] Step S150: Integrate the task time-series dependency network and the resource allocation quota set to generate the initial digital mainline model of the project. The initial digital mainline model of the project takes the task node unit as the core carrier. The task node unit encapsulates the identification code, the estimated duration parameter and the resource allocation quota set.
[0086] This step aims to integrate all the static and dynamic information constructed above into a unified, coherent, and computable initial digital master model for the project. This is accomplished through the following sub-steps.
[0087] Step S151: Use each task node unit in the task temporal dependency network as the modeling primitive of the initial digital mainline model of the project, and create a corresponding data structure instance for each modeling primitive.
[0088] The initial digital master model for the project was designed as a graph data structure composed of modeling primitives. Each task node in the task temporal dependency network, whether a leaf node or a parent node, is considered an independent modeling primitive. For each of these primitives, a corresponding data structure instance is created in memory. This instance serves as a container for storing all relevant information.
[0089] Step S152: Write the identifier code as the primary key field of the data structure instance, write the estimated duration parameter as the time attribute field of the data structure instance, and split the resource allocation quota set into human resources field, material resources field and financial resources field and write them into the resource attribute substructure of the data structure instance respectively.
[0090] The core attributes of each task node are populated into the corresponding data structure instance. The primary key field is assigned the identifier code of the node. The time attribute field is assigned the estimated duration parameter associated in step S1310. The resource attribute substructure is further subdivided: the human resources field is assigned the human resources quota unit determined in step S1410; the material resources field is assigned the material resources quota unit; and the financial resources field is assigned the financial resources quota unit. Thus, a modeling primitive encapsulates all information regarding its static definition, time consumption, and resource budget.
[0091] Step S153: Extract the preceding and succeeding logical edges in the task temporal dependency network, and use the starting point identifier and ending point identifier of the preceding and succeeding logical edges as the source node field and target node field of the association relationship tuple, respectively, to construct an association relationship mapping table between modeling primitives.
[0092] From the task temporal dependency network, extract all preceding and succeeding logical edges. For each directed edge, record the identifier of its starting point as the source node field and the identifier of its ending point as the target node field, forming a relationship tuple, such as (source node identifier, target node identifier). Collect all the above tuples to construct a relationship mapping table. This table does not store the specific attributes of the nodes, but only the connection relationships between nodes, and is the key index for navigating the entire digital master model graph structure of the project.
[0093] Step S154: Attach the project scope boundary description unit and the project timeline baseline unit as global metadata to the root node of the initial digital master model of the project. The global metadata is used to describe the overall context of the initial digital master model of the project.
[0094] Create a root node modeling primitive that represents the entire project. Associate the original project scope boundary description unit (such as the "Interior Decoration Project Scope Statement") and the project timeline baseline unit (such as the project master schedule file) with this root node as attachments or links as global metadata. This metadata describes the overall context of the model, such as the project's overall objectives, main constraints, and baseline plan.
[0095] Step S155: Based on the association mapping table, the data structure instances are topologically sorted according to the directions of the preceding and succeeding logical edges to generate a linear execution sequence of modeling primitives with time flow order.
[0096] Using the association mapping table constructed in step S153, a topological sorting algorithm is applied to all modeling primitives. Since the graph is a directed acyclic graph, a linear sequence can be generated. In this sequence, for any logical edge with a predecessor and successor, its starting point appears before its ending point. This linear execution sequence reflects the time flow order of the task from project start to end under ideal conditions.
[0097] Step S156: Perform interface matching checks on adjacent data structure instances in the linear execution sequence to ensure that the output delivery vocabulary of the preceding data structure instance and the input dependency vocabulary of the following data structure instance have a semantic inclusion or being included relationship.
[0098] Although the logical relationships between tasks have been established through pre- and post-task logical edges, it is still necessary to verify whether the "information" or "products" passed between tasks match. Traverse the linear execution sequence generated in step S155, and for each pair of adjacent data structure instances (preceding node A, following node B), extract the output delivery vocabulary set of node A and the input dependency vocabulary set of node B. Perform a semantic matching check to determine whether the input dependency vocabulary required by node B can be found in the output delivery vocabulary set of node A, or is semantically contained within it. For example, if node A outputs "marble floor," and node B needs "base floor" as input, since "marble floor" is a specific form of "base floor," it is determined to be an inclusion relationship, and the match is successful.
[0099] Step S157: If the interface matching check finds a semantic mismatch, an intermediate transformation node unit is inserted between the mismatched data structure instances. The intermediate transformation node unit is used to convert the output delivery vocabulary of the preceding data structure instance into an input dependency vocabulary format that can be recognized by the subsequent data structure instance.
[0100] Suppose that during interface matching checks, node C outputs "cut drywall," while node D requires "sized board material" as input. This is a semantic mismatch because node D might expect any board material, not just cut drywall. To resolve this, an intermediate transformation node unit is inserted between node C and node D. This intermediate transformation node unit is defined as "receiving the cut drywall, performing quality checks and dimensional verification, and packaging it into a generic board material input format that conforms to node D's requirements." This intermediate transformation node unit itself also becomes a new modeling primitive, possessing its own identifier and potentially minimal resource consumption.
[0101] In step S158, the inserted intermediate conversion node unit is also used as a modeling primitive, a temporary identifier code is assigned and associated with the corresponding resource consumption quota, and the intermediate conversion node unit is added to the association mapping table and the linear execution sequence.
[0102] For the intermediate transformation node unit inserted in step S157, a temporary identifier code is generated according to the rules in step S124. Based on its defined work content, a minimal resource consumption is estimated, and a corresponding resource allocation set (e.g., consuming a small amount of manpower) is generated. Then, this new modeling primitive is added to the association mapping table, adding two new edges: "Node C points to this intermediate node" and "This intermediate node points to node D," and deleting the original edge "Node C points to node D." Simultaneously, the linear execution sequence is updated, inserting the intermediate node between node C and node D.
[0103] Step S159: Perform cyclic dependency detection on the complete set of modeling primitives containing intermediate transformation node units. Traverse all paths formed by preceding and succeeding logical edges. If a closed loop is found that starts from a certain modeling primitive, passes through several preceding and succeeding logical edges, and then returns to the modeling primitive itself, adjust the logical relationship between the modeling primitives in the closed loop and break the closed loop.
[0104] After inserting intermediate transformation node units, the graph structure changes, requiring another round of cycle dependency detection. A depth-first search algorithm is used, starting from each node, traversing all reachable paths, and marking nodes on the current path. If a node already existing on the current path is visited again during the traversal, a cycle dependency (closed loop) is identified. For example, node A points to node B, node B points to node C, and node C points to node A. This situation is not allowed in the project logic. Manual intervention or adjustments to the logical relationships based on predefined rules are required. For example, if the edge from node C to node A is determined to be incorrect, it is deleted, thus breaking the closed loop and ensuring the directed acyclic property of the graph.
[0105] Step S1510 involves serializing and persistently storing all modeling primitives and their relationships that have passed the circular dependency detection and interface matching check, generating an initial digital master model of the project containing all task node units and intermediate transformation node units.
[0106] After the checks and corrections in steps S156 to S159, all the modeling primitives (including the original task node units and the newly added intermediate transformation node units) and their relationships defined through the relationship mapping table together constitute a complete, self-consistent, and executable graph model. This model is then serialized into a format that is easy to store and transmit, such as JSON graph data format or a dedicated binary format, and persisted to the project database. At this point, an initial project digital master model containing project scope, task decomposition, time logic, resource allocation, and inter-task interface definitions is formally generated, which can serve as the basis for subsequent project execution, monitoring, and change management.
[0107] Step S210: Obtain the real-time project status feedback data stream generated during the project execution phase. The real-time project status feedback data stream includes the actual start time, actual completion time, actual resource consumption, and actual output description information of each task node unit.
[0108] As the project enters the execution phase, on-site management personnel report project status in real time via mobile applications or web interfaces. Taking the "Marble Laying in the First Floor Atrium" work package as an example, when workers begin work, the team leader scans the corresponding QR code in the application, and the system records the actual start time as "9:00 AM on April 10, 2024." After the work is completed, a second scan is performed, and the system records the actual completion time as "5:00 PM on April 12, 2024." Simultaneously, daily reports on actual resource consumption are submitted, such as X kilograms of cement, Y square meters of marble, and Z bricklayers used that day. Upon completion of the work package, descriptions of the actual deliverables are uploaded, such as completed site photos and scanned copies of acceptance forms. This real-time, multi-dimensional data constitutes a continuous stream of real-time project status feedback data.
[0109] Step S220: Based on the identification code, associate and bind each record in the real-time project status feedback data stream with the data structure instance of the corresponding task node unit in the initial digital master model of the project.
[0110] Each record in the real-time project status feedback data stream contains the identifier code of its corresponding work package. For example, a record reporting the completion of "marble paving in the first-floor atrium" carries the identifier code "COMM-INTERIOR-WBS-02.01.01.01-003" in its data packet. After receiving this record, the system uses this identifier code as the query key to locate the corresponding data structure instance in the initial digital master model of the project, and associates this real-time record as a dynamic event with the event list of that instance.
[0111] Step S230: For each bound task node unit, calculate the time offset between the actual start time and the earliest start time as the start deviation value, and calculate the time offset between the actual completion time and the earliest completion time as the completion deviation value.
[0112] For task node units bound to real-time data, the actual start time and actual completion time are extracted from their associated dynamic events. Simultaneously, the earliest start time and earliest completion time calculated in step S136 are read from the data structure instance of that node unit. The start time deviation is calculated by subtracting the earliest start time from the actual start time, with the result in days. A positive value indicates a delay in start time; a negative value indicates an early start. Similarly, the completion deviation is calculated by subtracting the earliest completion time from the actual completion time; a positive value indicates a delay in completion, and a negative value indicates early completion.
[0113] Step S240: Compare the start-up deviation value and the completion deviation value with the preset deviation tolerance threshold. If the start-up deviation value or the completion deviation value exceeds the deviation tolerance threshold, mark the task node unit as a progress abnormal node unit.
[0114] A preset deviation tolerance threshold is established. For example, for a typical work package, a delay or advancement exceeding 2 days is considered abnormal. The absolute values of the start-up deviation and completion deviation calculated in step S230 are compared with this tolerance threshold. For instance, if the completion deviation for the work package "Marble Laying in the First Floor Atrium" is a delay of 3 days, exceeding the 2-day tolerance threshold, then this task node is automatically marked as an abnormal progress node and highlighted in the model, triggering an alert.
[0115] Step S250: Extract all task node units marked as progress anomaly nodes and all their successors to form a progress impact propagation subnetwork.
[0116] Starting from the progress anomaly node marked as "Marble paving in the first-floor atrium," a forward breadth-first traversal is performed using an association mapping table. All subsequent task nodes that directly or indirectly require this node as a prerequisite task are identified, such as "Finished product protection in the first-floor atrium" and "Scaffolding dismantling in the first-floor atrium." These traversed node nodes, along with the initial progress anomaly node, are extracted to form a progress impact propagation subnetwork.
[0117] Step S260: Based on the time difference reserve of each task node unit in the progress impact propagation sub-network, and combined with the start-up deviation value and completion deviation value, recalculate the earliest adjusted start time and earliest adjusted completion time of the affected subsequent task node units.
[0118] For each node in the schedule impact propagation subnetwork, a forward calculation similar to step S136 is performed again. However, the starting point is no longer the overall project start time, but the actual completion time of the schedule-abnormal node unit. For example, the actual completion time of the abnormal node "Marble paving in the first-floor atrium" is 3 days later than the originally planned earliest completion time. Then, the original earliest start time of its successor node "Finished product protection in the first-floor atrium" needs to be increased by these 3 days. If the time lag reserve of this successor node is less than 3 days, its earliest start time and earliest completion time will be forcibly postponed. The calculation propagates along the edges of the subnetwork to obtain the adjusted earliest start time and adjusted earliest completion time for each affected node.
[0119] Step S270: Compare the adjusted earliest start time and the adjusted earliest finish time with the original latest start time and the latest finish time of the subsequent task node unit to identify the task node units that may generate new critical paths.
[0120] The adjusted earliest start time of a successor node calculated in step S260 is compared with its original latest start time. If the adjusted earliest start time is greater than or equal to its latest start time, it means that the node cannot be delayed even by one day, otherwise it will affect the overall project duration. This node is marked as a node that may create a new critical path. For example, if the adjusted earliest start time of "dismantling of scaffolding in the first-floor atrium" is later than its latest start time, then it becomes a potential member on the new critical path.
[0121] Step S280: Based on the difference between the actual resource consumption and the corresponding quota in the human resources quota unit, material resources quota unit, and financial resources quota unit, generate a resource overspending or surplus record for each task node unit.
[0122] For each task node unit bound to real-time data, its reported actual resource consumption (such as actual consumption of cement, marble, and labor hours) is compared with the corresponding quota in the resource allocation quota set of that node unit (such as cement quota, marble quota, and labor hour quota). The difference between the two is calculated. For example, if the actual cement consumption is Y kilograms more than the quota, a resource overspending record is generated, with the record type being "material overspending," the overspending item being "cement," and the overspending amount being Y kilograms. Conversely, if the actual consumption is less than the quota, a resource surplus record is generated.
[0123] Step S290: Summarize the information of the abnormal progress node units, the earliest start time after adjustment, and the records of resource overruns or surpluses, generate a project current status deviation report and write it into the dynamic status layer of the project initial digital master model, and store the updated project initial digital master model as the project dynamic digital master model.
[0124] The schedule anomaly nodes marked in step S240, the adjusted times of affected nodes calculated in step S260, and all resource overruns or surpluses generated in step S280 are summarized and organized to form a structured project current status deviation report. This report is written into a dedicated layer in the initial digital pipeline model of the project—the "dynamic state layer." This layer is separate from the original static planning data but associated with it through identification coding. The original initial digital pipeline model of the project remains unchanged, while the model with the dynamic state layer superimposed is called the project dynamic digital pipeline model and is persistently stored. This model truly reflects "where" the project is currently and "how much it has deviated from the plan."
[0125] Step S310: Traverse all task node units and select task node units with resource overrun records as resource-scarce node units.
[0126] From the project's dynamic digital master model, traverse the dynamic state layers of all task node units. Check whether each node is associated with a resource overrun record generated in step S280. All task node units with at least one resource overrun record, such as the "painting latex paint on the walls of the first-floor corridor area" work package, are filtered out and marked as resource-scarce node units.
[0127] Step S320: Obtain the identifier code of the resource-scarce node unit, and find all the successor task node units with the resource-scarce node unit as the predecessor node according to the association mapping table.
[0128] Using the identifier code of "Painting Latex Paint on the Walls of the First Floor Corridor Area" (marked as a resource-scarce node unit) as input, query the association mapping table. Find all records in the association tuples where the source node field equals the identifier code. The task node unit corresponding to the target node field of these records is the set of all directly succeeding task node units. For example, its successor might be the work package "Sanding and Acceptance of the Walls in the First Floor Corridor Area".
[0129] Step S330: parse the input dependency words of the subsequent task node unit and identify the key input materials or key human resource roles necessary for the startup of the subsequent task node unit.
[0130] For each subsequent task node unit found in step S320, such as "wall sanding and acceptance in the first-floor corridor area," its work content description text is parsed again to extract its input dependency words. Key input materials necessary for starting this work package are identified, such as "already painted walls," and key human resource roles, such as "quality inspector." By analyzing these words, it can be determined whether resource scarcity will affect subsequent tasks. For example, if the resource-scarce node unit "painting the walls of the first-floor corridor area" is delayed due to a lack of painters, then its subsequent task "wall sanding and acceptance" will be unable to start due to the lack of the key input material "already painted walls."
[0131] Step S340: Match the resource overrun type of the resource-scarce node unit with the key input materials and key human resource roles of the subsequent task node unit to determine the degree of impact of resource shortage on subsequent tasks.
[0132] The resource overrun type of resource-scarce node units (e.g., "overrun of manpower, shortage of painters") is matched with the key input materials and manpower roles of subsequent tasks. If the key input material of the subsequent task happens to be the output of the resource-scarce node unit, the impact is determined to be "direct impact," with a high level. If the key manpower role of the subsequent task happens to be a resource-scarce type (e.g., the subsequent task also needs painters), the impact is also determined to be "direct impact." If the resources required by the subsequent task are unrelated to the resource-scarce type, the impact is "indirect impact or no impact," with a low level. For example, "inspection and acceptance of wall sanding in the first-floor corridor area" requires "already painted walls" as input, which is directly related to a shortage of painters; therefore, the impact level is determined to be high.
[0133] Step S350: Based on the level of impact, allocate emergency resource quotas from the unallocated resource reserve pool in the project resource budget allocation unit to the resource-scarce node unit, and update the human resource quota unit, material resource quota unit, and financial resource quota unit of the resource-scarce node unit.
[0134] For resource-scarce node units with a high impact level, initiate emergency resource allocation. Check the "Total Unforeseen Expenses" or "Resource Reserve Pool" in the project resource budget allocation unit, where emergency resources are reserved. Assume there are additional emergency painter man-days in the reserve pool. Allocate a certain amount of painter man-days from the reserve pool and add them to the human resource quota unit for the resource-scarce node unit "Painting Latex Paint on the Walls of the First Floor Corridor Area," increasing it from A man-days to A plus the allocated value man-days. Simultaneously, if funds are allocated, update the fund resource quota unit accordingly.
[0135] Step S360: If the available quota in the resource reserve pool is insufficient to cover the resource overspending of the resource-scarce node unit, then initiate the cross-project resource borrowing process, send a resource borrowing request to the associated external project system and receive the returned resource borrowing confirmation information.
[0136] If, in step S350, the number of emergency painter man-days in the reserve pool is less than the overspending amount and cannot meet the demand, then a cross-project resource borrowing process is initiated. A resource borrowing request is sent to the resource management system of another ongoing commercial project at the company level (the associated external project system), requesting to borrow B man-days of painters. The external project system determines whether the borrowing is possible based on its own resource availability. If borrowing is possible, a resource borrowing confirmation message is returned, which includes the borrowed resource type as "painter," the borrowed quantity as B man-days, and the estimated return time.
[0137] Step S370: Based on the type and quantity of borrowed resources carried in the resource borrowing confirmation information, temporarily add the corresponding resource quota unit for the resource shortage node unit, and record the return plan of the borrowed resources in the actual resource consumption after the completion of the resource shortage node unit.
[0138] Upon receiving the resource borrowing confirmation information from step S360, based on the information therein, a temporary increase of B person-days of borrowed resources is added to the human resource quota unit for the resource-scarce node unit "Painting latex paint on the walls of the first-floor corridor area". Simultaneously, in the dynamic state layer of this node, a resource return plan is recorded, for example, "It is planned that after all painting work in this project is completed, C painters will be transferred to the project for C days of work to repay the borrowed resources."
[0139] Step S380: Recalculate the estimated duration parameters of all task node units that have undergone resource allocation, adjust the remaining estimated duration parameters of the task node unit according to the impact of increased resources on work efficiency, and write the adjusted remaining estimated duration parameters into the project dynamic digital master model.
[0140] Resource allocation, especially increasing manpower, will affect the duration of a task. For the work package "painting the walls of the first-floor corridor with latex paint," the total manpower increases after adding B borrowed painters. The remaining workload needs to be recalculated. Assuming the remaining wall painting area is S square meters, each painter's daily efficiency is T square meters, and the current total manpower is the original A people plus the borrowed B people, then the remaining estimated duration parameter equals S divided by (A plus B multiplied by T) days. This newly calculated, shorter remaining estimated duration parameter is updated in the time attribute field of the node in the project's dynamic digital master model, replacing the original remaining time. This will affect the earliest start time of subsequent tasks after adjustments.
[0141] Step S390: The resource borrowing request sending record, the resource borrowing confirmation information receiving record, and the resource quota unit update record are used as resource dynamic adjustment logs and attached to the audit trajectory layer of the project dynamic digital mainline model to generate an enhanced project dynamic digital mainline model containing complete resource change history tracing information.
[0142] All key events in the entire resource allocation process are recorded in log form. This includes resource borrowing requests issued in step S360 (recording request time, borrowing target, and borrowing quantity), resource borrowing confirmation information received in step S360 (recording confirmation time, lending project, and actual approved quantity), and update records of resource quota units in step S370 (recording update time and quota before and after update). These logs are attached to a dedicated traceability layer in the project dynamic digital lead model—the "audit track layer." The original project dynamic digital lead model remains unchanged, while the model with the audit track layer overlaid is called the enhanced project dynamic digital lead model. This model not only reflects the current status of the project and the plan after resource changes but also fully records the decision-making and execution process of all resource changes, meeting the traceability requirements of project management.
[0143] Step S410: Obtain the engineering change order triggered by the project change control process. The engineering change order includes a description of the scope of impact of the change, a detailed description of the change content, and the change implementation time window requirements.
[0144] During project execution, changes in the client's requirements triggered the change control process. For example, the client requested an increase in the waterproofing level of the kitchen in the third-floor catering area. This generated an engineering change order, which existed in the form of a structured document. The description of the scope of the change stated that it "involves all waterproofing-related work surfaces in the kitchen of the third-floor catering area"; the detailed description of the change content stated that "the original design of two layers of polyurethane waterproofing coating will be changed to three layers, and an additional polypropylene fabric waterproofing layer will be added"; and the change implementation time window requirement stated that "this change must be implemented before the start of the masonry work, no later than June 10, 2024".
[0145] Step S420: Parse the description of the scope of impact of the change in the engineering change order and extract the name or identifier code fragment of the affected work package mentioned in the description of the scope of impact of the change.
[0146] Natural language processing (NLP) is used to parse the engineering change order. Key information is extracted from the description of the impact scope: "Involves all waterproofing-related work surfaces in the three-story kitchen area." A semantic search is performed within the project task decomposition structure tree to find all work packages whose names contain keywords such as "three-story kitchen" and "waterproofing." For example, it might find "three-story kitchen floor base treatment," "first coat of waterproofing on the three-story kitchen walls," and "second coat of waterproofing on the three-story kitchen floor." Simultaneously, the detailed description of the change content is parsed to locate more precise identifier code segments. For example, it might mention the hierarchical path "WBS-03.03.02," pointing to the parent node "three-story kitchen waterproofing project" and all its child nodes.
[0147] Step S430: Locate the corresponding task node unit in the initial digital master model of the project as the change starting node unit based on the name or identifier code fragment of the affected work package.
[0148] Based on the analysis results of step S420, the nodes affected by the change are precisely identified in the initial digital master model of the project. All task node units in the subtree rooted at "three-layer kitchen waterproofing project" are considered as potential change starting points. However, to precisely control the scope of impact, the work package that directly describes the change content, such as "second coat of waterproofing coating on the three-layer kitchen floor," is used as the starting node unit for this change analysis.
[0149] Step S440: Starting from the change starting node unit, perform a forward breadth-first traversal along the direction of the predecessor and successor logical edges, and mark all reachable task node units as the set of potentially affected node units.
[0150] Starting with the node unit representing the change in "second coat of waterproofing on the three-story kitchen floor," a forward breadth-first traversal is performed along the logical edges of predecessors and successors using an association mapping table. All nodes reachable from this node along the edges are included in a set. This means that not only will "second coat of waterproofing" itself change, but subsequent steps such as "third coat of waterproofing," "water tightness test," and "construction of waterproofing protective layer," and ultimately all subsequent work related to the project, may be affected by the change in the preceding process. This set is the set of potentially affected node units.
[0151] Step S450: For each task node unit in the potentially affected node unit set, analyze the degree of correlation between the detailed description of the change content and the specific project work package of the task node unit, and calculate the change ripple coefficient of each task node unit.
[0152] For each node in the potentially affected node set, the specific degree to which it is affected by the change needs to be assessed. The detailed change description, "adding a polypropylene waterproof layer," is vectorized, and the work content description text for that node is also vectorized. The cosine similarity between the two vectors is calculated. The higher the similarity, the more directly the work content of the node is related to the change, and the higher the change's sweep coefficient. For example, the "third waterproof coating" node will have a high sweep coefficient, while the "waterproof layer protective layer construction" node, because its work content is on top of the waterproof layer, is less affected by changes in the waterproof layer's process, thus having a lower sweep coefficient. Using this method, a change sweep coefficient between 0 and 1 is calculated for each node.
[0153] Step S460: Select task node units whose change impact coefficient exceeds the preset impact threshold from the set of potentially affected node units to form the set of actual change-affected node units.
[0154] A threshold for impact is preset, for example, 0.6. Nodes with a change impact coefficient lower than 0.6 calculated in step S450 are removed from the potentially affected node unit set. Only nodes with a impact coefficient greater than or equal to 0.6, such as "second waterproof coating on the third-floor kitchen floor," "third waterproof coating," and "construction of additional waterproof layer on the wall," are retained to form the actual change impact node unit set. These nodes are the core objects whose planning data needs to be actually modified.
[0155] Step S470: For each task node unit in the actual change-affected node unit set, adjust the content description text of its specific project work package according to the detailed description of the change content, and regenerate the adjusted estimated duration parameter and the adjusted resource allocation quota set.
[0156] For each node in the set of node units affected by the actual change, the description text of its specific project work package is modified according to the detailed description of the change. For example, the description of "second waterproof coating on the three-story kitchen floor" is changed to "apply the second coat of polyurethane waterproof coating and lay polypropylene cloth." Based on the modified text, the workload estimation model of step S135 and the resource requirement estimation model of step S143 are called again to generate adjusted estimated duration parameters and adjusted resource allocation quotas for this node. For example, because the polypropylene cloth process is added, the estimated duration is extended from E days to F days, and "polypropylene cloth" and "matching adhesive" are added to the resource requirements.
[0157] Step S480: Based on the adjusted estimated duration parameters and the constraints of the unchanged task node units outside the actual change-affected node unit set in the task timing dependency network, recalculate the earliest start time, latest start time, and time difference reserve of all nodes related to the actual change-affected node unit set.
[0158] The set of node units affected by the actual changes is extracted from the overall task time-series dependency network and treated as a subnetwork. Nodes within the subnetwork adopt the newly generated estimated duration parameters from step S470. The connection points between the subnetwork and the outside remain unchanged. Then, steps S136, S137, and S138 are recalculated across the entire network. For nodes within the subnetwork and their subsequent nodes, their earliest / latest times are recalculated due to the change in duration. For unchanged nodes preceding the subnetwork, their times are unaffected but serve as input constraints for the subnetwork node calculations.
[0159] Step S490: Verify the compliance of the recalculated earliest start time, latest start time, and time difference reserve with the change implementation time window requirements. If there is a conflict, iteratively adjust the estimated duration parameters or resource input of certain task node units in the actual change-affected node unit set until they meet the change implementation time window requirements.
[0160] After recalculating step S480, the earliest and latest start times of nodes strongly correlated with the actual change-affected node set are compared with the change implementation time window requirement ("no later than June 10, 2024"). For example, it is found that the latest completion time of the final node "construction of the three-layer kitchen waterproof protective layer" is later than June 10, 2024, i.e., a conflict exists. In this case, iterative adjustment needs to be initiated. Possible measures include: based on the resource allocation amount generated in step S470, increasing resource input (e.g., increasing the number of workers) for the "third layer of waterproof coating" node on the critical path, thereby further compressing its adjusted estimated duration parameter. Steps S480 and S490 are re-executed until the time points of all relevant nodes meet the change implementation time window requirement, i.e., the conflict is eliminated.
[0161] Step S4100: Write the updated feature parameters of all adjusted task node units back into the initial digital master model of the project, replace the original corresponding feature parameters, and generate the project modified digital master model containing the execution results of the engineering change order.
[0162] Once step S490 passes verification, the updated characteristic parameters (including work package content, estimated duration, resource allocation, earliest and latest times, etc.) of all nodes in the set of nodes actually affected by the changes are written back to the initial digital lead model of the project, overwriting the original data. Simultaneously, the time parameters of subsequent nodes associated with these nodes and updated due to recalculation are also updated. Finally, the engineering change order itself is treated as an object and associated with the root node of the post-change digital lead model of the project, serving as the basis for this change. At this point, a post-change digital lead model of the project containing the execution results of the engineering change order is generated, reflecting the latest project plan after the design changes.
[0163] Step S510: Obtain the list of quality control points defined in the project quality management plan. The list of quality control points includes the inspection object identifier, inspection timing trigger conditions, and detailed list of inspection items corresponding to each quality control point.
[0164] A structured list of quality control points was extracted from the project quality management plan. For the work package "Marble paving in the first-floor atrium," a quality control point was defined. The identification code for this point is the same as the identification code for the work package. The trigger condition for the inspection is defined as "triggered when the actual completion time of this work package is recorded." The detailed list of inspection items includes specific quantitative inspection indicators such as: "Marble type and specifications meet design requirements," "Surface flatness deviation less than A mm," "Joint height difference less than B mm," and "Hollow rate less than C%."
[0165] Step S520: Match the inspection object identifiers in the quality control point list with the identifier codes of the task node units in the initial digital master model of the project to determine the target task node unit that each quality control point needs to be bound to.
[0166] Each inspection object identifier in the quality control point list is precisely matched with the identifier code of all task node units in the initial digital master model of the project. For example, the identifier code of the "Marble Laying in the First Floor Atrium" work package is compared with the inspection object identifier in the list. If a match is found, it is determined that the quality control point needs to be bound to that specific task node unit.
[0167] Step S530: Based on the inspection timing triggering conditions, set a quality inspection trigger flag for each bound task node unit in the task time sequence dependency relationship network, and the storage address of the detailed list of inspection items associated with the quality inspection trigger flag.
[0168] Based on the matching results and the triggering conditions for the inspection, a quality inspection trigger flag is set in the status field of the data structure instance for the bound task node unit "Marble Paving of the First Floor Atrium". This flag is a pointer to a memory or storage address that stores a detailed list of inspection items belonging to this node, parsed from the quality control point list. This allows the corresponding inspection items to be loaded quickly when the node status changes.
[0169] Step S540: During project execution, when the actual completion time of a task node unit is recorded, a loading instruction for the detailed list of inspection items of the quality control point bound to it is triggered.
[0170] When the team leader reports the actual completion time of the "Marble Laying in the First Floor Atrium" work package via the mobile application, the system receives the event. Based on the node's identifier code, the system queries its data structure instance and finds that a quality inspection trigger flag is set. Therefore, an instruction is automatically triggered to load the detailed list of inspection items bound to that node based on the address stored in the flag.
[0171] Step S550: For each inspection item in the detailed list of inspection items, extract the corresponding measured value of the inspection index from the actual output description information of the task node unit, and compare the measured value of the inspection index with the preset quality standard value in the detailed list of inspection items.
[0172] The loaded detailed list of inspection items contains multiple items. For the first inspection item, "Surface flatness deviation less than A mm," the system searches the actual output description information uploaded for this work package to see if it contains the field "Measured surface flatness value." If the team leader filled in the measured value as D mm when reporting completion, the system extracts that value D. Then, it compares the measured value D with the quality standard value A. If D is less than or equal to A, the inspection item is qualified; otherwise, it is unqualified. For the second inspection item, "Void rate less than C%," E is similarly extracted from the uploaded document or data containing "Measured void rate value" and compared with C.
[0173] Step S560: If the measured values of all inspection items meet the quality standard values, a quality release flag is generated for the quality control point, and the quality release flag is appended to the status field of the data structure instance of the task node unit.
[0174] If the comparison results in step S550 show that the measured values of all inspection items (such as flatness deviation D, measured value of joint height difference, and measured value of hollow rate E) meet the preset quality standard values (A, B, C), then the quality control point is deemed to have passed. The system automatically generates a quality release identifier, such as a digital signature or a "PASS" status code, and writes it into the status field of the data structure instance of the "First Floor Atrium Marble Laying" task node unit. This identifier serves as proof that the work package has passed quality inspection, allowing subsequent tasks to be initiated.
[0175] Step S570: If the measured value of any inspection item does not meet the quality standard value, then mark the task node unit as a quality abnormality node unit and freeze the execution permissions of the quality abnormality node unit and all its subsequent task node units.
[0176] If step S550 reveals that the measured hollow rate E is greater than the quality standard value C, then the "First Floor Atrium Marble Laying" work package is marked as a quality anomaly node unit. The system immediately and automatically triggers a process to set the execution permission of this project task node unit to "frozen." Simultaneously, using the relationship mapping table, all subsequent task node units are located, such as "First Floor Atrium Finished Product Protection" and "First Floor Atrium Scaffolding Removal," and their execution permissions are also set to "frozen." This means that until the quality issue is resolved, all subsequent work cannot be reported or started in the system.
[0177] Step S580: Based on the quality problem type corresponding to the non-compliant inspection item, match the corresponding defect repair process from the preset defect handling process library, and attach a defect repair task node unit to the quality anomaly node unit. The defect repair task node unit has an independent identification code, estimated duration parameters, and resource allocation quota set.
[0178] Based on the non-compliant inspection item "excessive hollow rate," the quality problem type is identified as "surface hollowness." A standard repair procedure for "hollow marble flooring" is matched from the pre-set defect handling procedure library. This procedure includes the repair steps: "removing the hollow marble," "cleaning the base layer," "re-laying new marble," and "curing." The system automatically creates a sub-node or a closely related new task node unit—the defect repair task node unit—for the quality anomaly node unit "first-floor atrium marble paving." This new unit is assigned an independent identification code, and based on the standard repair procedure, its estimated duration parameters (e.g., requiring G days) and the required resource allocation set (e.g., requiring H tile setters and I blocks of the same type of marble) are automatically generated.
[0179] Step S590: Insert the defect repair task node unit after the quality anomaly node unit and before its original successor task node unit in the task temporal dependency relationship network to generate the repaired execution path, and synchronize the updated task temporal dependency relationship network to the initial digital mainline model of the project to generate a project quality-enhanced digital mainline model containing quality closed-loop control function.
[0180] In the task sequence dependency network, the quality anomaly node "First Floor Atrium Marble Paving" and its original direct successor node "First Floor Atrium Finished Product Protection" are located. The defect repair task node generated in step S580 is inserted between them. That is, the original edge pointing from "First Floor Atrium Marble Paving" to "First Floor Atrium Finished Product Protection" is deleted, and then two new edges are created: one from "First Floor Atrium Marble Paving" to the "Marble Hollow Repair" unit, and the other from the "Marble Hollow Repair" unit to "First Floor Atrium Finished Product Protection". This new network topology reflects the practical logic that quality problems must be repaired before finished product protection can continue. This updated task sequence dependency network is synchronized back to the initial digital master model of the project. The original model is updated, generating a project quality-enhanced digital master model that includes quality closed-loop control functions.
[0181] For example, the method can also include: step S610, obtaining various project documents generated at each stage of the project's entire lifecycle, including project startup documents, project plan documents, project execution logs, project change records, and project acceptance reports.
[0182] Throughout the project's entire lifecycle, from initiation to completion, a large number of documents were generated and accumulated, all of which were collected and standardized. Project initiation documents included the initial project scope statement and budget. Project planning documents included the construction organization design and schedule. Project execution logs included daily construction logs, material arrival and acceptance forms, and concealed works acceptance records. Project change logs included the previously mentioned engineering change orders and change implementation records. Project acceptance reports included sub-item acceptance reports and final acceptance reports. All these documents, whether scanned copies, Office documents, or PDFs, were uploaded to the project document management system and are prepared for association with the digital master model.
[0183] Step S620: Assign a unique document identifier code to each project document and extract the document metadata of each project document. The document metadata includes the document creation time, document author information, and a set of document topic keywords.
[0184] For each uploaded document, the system automatically generates a globally unique document identifier code, such as "DOC-20240520-001". Simultaneously, by parsing document attributes and content, its document metadata is extracted. For example, for a document titled "Concealed Works Acceptance Record (Electrical)," its creation date is extracted as "May 20, 2024," the document author information is "Quality Inspector Zhang San," and using keyword extraction technology, the document's subject keyword set is obtained as {"Concealed Works," "Electrical," "Acceptance," "Pipeline Laying"}.
[0185] Step S630: Parse the full text of each project document and identify the identifier codes of all task node units and the name phrases of specific project work packages appearing in the full text.
[0186] For each document, especially execution logs and acceptance reports, text parsing technology is used to scan its entirety. For example, in the main text of the document "Concealed Works Acceptance Record (Electrical)," the text "Corresponding work package: Electrical conduit installation in the first-floor corridor area" and the identification code of this work package "COMM-INTERIOR-WBS-02.02.03.02-005" are found. The system will recognize this identification code. At the same time, semantic recognition will be used to perform fuzzy matching between phrases such as "first-floor corridor" and "conduit installation" appearing in the text and the name phrases of specific project work packages in the project task decomposition structure tree.
[0187] Step S640: Based on the semantic similarity between the set of document topic keywords and the name phrases of specific project work packages of task node units, establish the association strength score between project documents and task node units.
[0188] For a document, its relevance to a specific task node unit depends not only on whether the identifier code is explicitly mentioned, but also on its semantic relevance. The semantic similarity is calculated between the document's set of topic keywords, such as {"concealed works", "electrical", "acceptance"}, and the work package name phrase of the task node unit "electrical conduit installation in the first-floor corridor area". By mapping both keywords and name phrases to the same vector space, a cosine similarity score is calculated, resulting in a relevance strength score between 0 and 1. If the identifier code is explicitly mentioned in the document, the weight of this score is increased, for example, by setting it to a maximum score of 1.0.
[0189] Step S650: The document identifier code and document metadata of the project documents whose association strength scores exceed the preset association threshold are appended to the document association field of the corresponding task node unit in the initial digital master model of the project.
[0190] A preset association threshold, such as 0.7, is set. For each document, all task node units with an association strength score greater than or equal to 0.7 are selected. Then, the document identifier code and its metadata are added as an association entry to the document association field of the data structure instance of these task node units. For example, the identifier code and metadata of "Hidden Works Acceptance Record (Electrical)" are added to the document association field of the "Electrical Conduit Laying in First Floor Corridor Area" node.
[0191] Step S660: For multiple project documents associated with the same task node unit, sort them according to the document creation time point to generate the document timeline sequence of that task node unit.
[0192] For a task node unit, such as "Marble Laying in the First Floor Atrium," its document association field may be associated with multiple documents: one is the "Technical Disclosure Record" before construction (created on April 8, 2024), one is the "Material Arrival Inspection Report" during construction (April 9, 2024), one is the "Marble Laying Sub-project Acceptance Record" after construction (April 13, 2024), and another is the "Defect Repair Notice" due to quality issues (April 14, 2024). Sort these documents in ascending order according to their creation time in their metadata to generate a document timeline sequence for this task node unit from start to finish, clearly reflecting its evolution.
[0193] Step S670: Based on the content differences between adjacent project documents in the document timeline sequence, calculate the evolution trajectory feature vector of the specific project work package corresponding to the task node unit in the time dimension.
[0194] For each pair of adjacent documents in the document timeline sequence, calculate their content differences. For example, comparing the "Technical Disclosure Record" and the "Material Arrival Inspection Report," a new content difference of "material brand change" is found. Comparing the "Material Arrival Inspection Report" and the "Sub-item Project Acceptance Record," a content difference of "pipeline conflict encountered during construction, resolved on-site" is found. These differences are quantified and encoded into a vector, where each dimension represents a change type (e.g., "material change," "process adjustment," "problem handling"). The differences of all adjacent document pairs in the sequence are aggregated to ultimately generate an evolutionary trajectory feature vector representing the evolution of the knowledge state of the task node unit throughout its entire lifecycle.
[0195] Step S680: Aggregate and analyze the evolution trajectory feature vectors of all task node units to generate a knowledge evolution network diagram of the entire project throughout its life cycle. The knowledge evolution network diagram uses task node units as nodes and the reference relationships between documents as edges.
[0196] The evolutionary trajectory feature vectors of all task node units are summarized. Simultaneously, the reference relationships between all project documents are analyzed; for example, a "Change Log" might reference the original "Project Scope Statement," and an "Acceptance Report" might reference related "Change Logs." Using task node units as nodes in the graph, and the mutual reference relationships between documents as edges between nodes (if a document belongs to node A and references a document belonging to node B, an edge is established between A and B), and the evolutionary trajectory feature vectors generated in step S670 as node attributes, a massive knowledge evolution network graph is constructed. This graph reveals how project knowledge flows and evolves between various tasks.
[0197] Step S690: The knowledge evolution context diagram is superimposed as an independent semantic layer onto the initial digital master model of the project to generate a full-mirror digital master model of the project that includes both project process data and project knowledge assets.
[0198] Finally, the knowledge evolution map generated in step S680 is used as an independent, queryable, and analyzable semantic layer, which is then overlaid and integrated with the original initial digital master model of the project (containing process data such as tasks, time, resources, and status). The original model answers the questions "What did the project do? When did it do it? What resources were used?", while the newly overlaid semantic layer answers the questions "Why did the project do it this way? What knowledge was generated during the process? How is this knowledge related?" After integration, a complete digital master model of the project is formed, encompassing both project process data and project knowledge assets. This model can be used not only for project management and control but also for project review, knowledge transfer, and new employee training, greatly enhancing the value of project assets.
[0199] In some embodiments, the project lifecycle integrated management system based on digital thread technology for performing the above methods can be any electronic device with data computing, processing, and storage capabilities. This project lifecycle integrated management system based on digital thread technology can be used to implement the methods provided in the above embodiments.
[0200] Typically, a project lifecycle integrated management system based on digital thread technology includes a processor and memory. The processor may include one or more processing cores, such as a 4-core processor or an 8-core processor. The memory may include one or more computer-readable storage media, which may be non-transitory. The memory may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices or flash memory devices. In some embodiments, the non-transitory computer-readable storage media in the memory is used to store a computer program configured to be executed by one or more processors to implement the above-described text processing method or text processing model. In some embodiments, the computer-executable instructions may take the form of a program, software, software module, script, or code, written in any form of programming language (including compiled or interpreted languages, or declarative or procedural languages), and may be deployed in any form, including being deployed as a standalone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. As an example, computer-executable instructions can be deployed to execute on a single electronic device, or on multiple electronic devices located in one location, or on multiple electronic devices distributed across multiple locations and interconnected via a communication network.
[0201] Finally, it should be noted that the above-disclosed embodiments are merely preferred embodiments of the present invention and are only used to illustrate the technical solutions of the present invention, not to limit them. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A project lifecycle integrated management method based on digital thread technology, characterized in that, The method includes: Obtain the set of original project planning documents generated during the project initiation phase. The set of original project planning documents includes project scope boundary description units, project timeline baseline units, and project resource budget allocation units. Based on the project scope boundary description unit, the project task structure is decomposed to generate a project task decomposition structure tree with hierarchical belonging relationship. The project task decomposition structure tree consists of multiple task node units, each task node unit corresponds to a specific project work package and carries the identification code of the specific project work package. Based on the project task decomposition structure tree and the project timeline baseline unit, a task temporal dependency network is constructed. The task temporal dependency network includes the predecessor and successor logical edges between the task node units and the estimated duration parameters of the task node units. The identifier of the task node unit is matched with the resource requirements of the project resource budget allocation unit to obtain the resource allocation quota set corresponding to the task node unit. The resource allocation quota set includes human resource quota unit, material resource quota unit and financial resource quota unit. The initial digital mainline model of the project is generated by integrating the task time-series dependency network and the resource allocation quota set. The initial digital mainline model of the project takes the task node unit as the core carrier. The task node unit encapsulates the identification code, the estimated duration parameter and the resource allocation quota set.
2. The integrated project lifecycle management method based on digital thread technology according to claim 1, characterized in that, The step of performing project task structure decomposition processing based on the project scope boundary description unit to generate a project task decomposition structure tree with hierarchical affiliation includes: Parse the project objective statement text in the project scope boundary description unit, and extract the key deliverable noun phrases and the compositional relationship phrases between the key deliverable noun phrases in the project objective statement text; An initial deliverable hierarchy diagram is constructed based on the key deliverable noun phrases and the composition relationship phrases. The root node of the initial deliverable hierarchy diagram corresponds to the final project deliverable, and the leaf nodes of the initial deliverable hierarchy diagram correspond to the smallest granularity deliverables. For each leaf node of the initial deliverable hierarchy diagram, the minimum granularity deliverable is divided into tasks by calling a preset work package generation rule base, and the minimum granularity deliverable is converted into a specific project work package containing specific work actions. Each specific project work package is assigned a globally unique identifier code, which includes a project code prefix field, a hierarchy path field, and a sequence number field. The hierarchy path field is used to record the position coordinates of the specific project work package in the initial deliverable hierarchy diagram. The specific project work packages are attached level by level according to the parent-child relationship of the initial deliverable hierarchy diagram to generate the project task decomposition structure tree. The work scope of the specific project work package corresponding to the upper-level task node unit in the project task decomposition structure tree covers the sum of the work scopes of the specific project work packages corresponding to all its lower-level sub-task node units. The task node units in the project task decomposition structure tree are traversed and scanned to detect whether there are task node units with duplicate identifier codes and whether there are blank node units that have not been assigned the specific project work package. If a task node unit with duplicate identifier codes is detected, the duplicate identifier codes are re-encoded according to the project code prefix field and the hierarchical path field to ensure that each task node unit has a unique identifier code. If the blank node unit is detected, a supplementary work package is automatically generated and filled into the blank node unit based on the position coordinates of the blank node unit in the initial deliverable hierarchy diagram and the content semantics of the specific project work package of the adjacent node unit through the completion template. The project task decomposition structure tree after the recoding process and the supplementary work package filling are subjected to structural stability evaluation, and the decomposition granularity uniformity index of the task node units at each level in the project task decomposition structure tree is calculated. The decomposition granularity uniformity index is compared with a preset granularity threshold range. If the decomposition granularity uniformity index exceeds the granularity threshold range, the task node units in the project task decomposition structure tree that are too coarse or too fine in decomposition granularity are recursively adjusted until the decomposition granularity uniformity index falls within the granularity threshold range, thus obtaining the final project task decomposition structure tree.
3. The integrated project lifecycle management method based on digital thread technology according to claim 1, characterized in that, The construction of the task temporal dependency network based on the project task decomposition structure tree and the project timeline baseline unit includes: Traverse all the task node units in the project task decomposition structure tree, and extract the identification code of each task node unit and the work content description text of the specific project work package; Semantic parsing is performed on the work content description text to identify the input dependency words and output delivery words implicit in the work content description text. The input dependency words are used to represent the preconditions required to start the specific project work package, and the output delivery words are used to represent the intermediate products produced after the specific project work package is completed. Based on the matching relationship between the input dependency vocabulary and the output delivery vocabulary, the preceding and succeeding logical edges are established between the identifier codes of different task node units. The direction of the preceding and succeeding logical edges is from the task node unit that produces the intermediate product to the task node unit that requires the preceding conditions. Obtain the overall project start time and overall project delivery time contained in the project timeline baseline unit, assign the overall project start time to the starting task node unit that has no in-degree of the preceding and succeeding logical edges, and assign the overall project delivery time to the ending task node unit that has no out-degree of the preceding and succeeding logical edges. Workload estimation processing is performed on the work content description text of each task node unit, and the estimated duration parameter of each task node unit is generated by combining the corresponding human resource quota unit and material resource quota unit in the project resource budget allocation unit. Based on the overall start time of the project of the starting task node unit and the estimated duration parameter, the earliest start time and the earliest finish time of each task node unit are calculated in a forward manner. The earliest start time depends on the maximum value of the earliest finish times of all the preceding task node units of the task node unit. Based on the overall project delivery time of the end task node unit and the estimated duration parameter, the latest start time and the latest finish time of each task node unit are calculated in reverse. The latest finish time depends on the minimum value of the latest start time of all subsequent task node units of that task node unit. The time difference between the latest start time and the earliest start time of each task node unit is calculated as the time difference reserve of that task node unit, and task node units with a time difference reserve of less than a preset time difference threshold are marked as critical path node units. Extract all critical path node units and their preceding and succeeding logical edges to construct a critical path sub-network. The total duration of the critical path sub-network is equal to the difference between the overall project start time and the overall project delivery time. The critical path subnetwork is integrated with the remaining non-critical path node units to generate a complete task time-series dependency network. Each task node unit in the task time-series dependency network is associated with the identifier code, the estimated duration parameter, the earliest start time, the latest start time, and the time difference reserve.
4. The integrated project lifecycle management method based on digital thread technology according to claim 1, characterized in that, The step of matching the identifier of the task node unit with the resource requirements of the project resource budget allocation unit to obtain the resource allocation quota set corresponding to the task node unit includes: The project resource budget allocation unit is parsed, and the total budget entries divided by resource type in the project resource budget allocation unit are extracted. The total budget entries include the total human resources budget field, the total material resources budget field, and the total financial resources budget field. Traverse all the task node units in the project task decomposition structure tree to obtain the specific project work package and the estimated duration parameter for each task node unit; Based on the work type label of each specific project work package, a preset resource demand estimation model is invoked to perform resource demand prediction processing, generating the demand intensity coefficient of human resources corresponding to the total human resources budget field and the list of material resource demand types corresponding to the total material resources budget field for that specific project work package. Multiply the demand intensity coefficient by the estimated duration parameter to obtain the total human resource demand of the task node unit, wherein the total human resource demand is measured in person-days. Based on the material types in the demand list and the unit time consumption rate of the material type, calculate the total material resource demand of the task node unit within the estimated duration parameter. The funding and resource requirements of each task node unit are decomposed. The funding and resource requirements include human resource costs and material procurement costs. The human resource costs are calculated based on the total human resource requirements and the preset unit price of human resources. The material procurement costs are calculated based on the total material resource requirements and the unit price of materials. Summarize the total human resource demand, total material resource demand, and financial resource demand of all the task node units to generate a total resource demand forecast vector for the project. The project's total resource demand forecast vector is compared and analyzed with the total human resources budget field, the total material resources budget field, and the total financial resources budget field in the project resource budget allocation unit to calculate the overspending ratio or surplus ratio of each resource type. If the overspending ratio of a certain resource type exceeds the preset tolerance range, the resource balancing optimization process is initiated. The estimated duration parameter of the task node unit is extended or the parallelism of multiple task node units is adjusted. The total demand for human resources, the total demand for material resources, and the demand for financial resources are recalculated until the overspending ratio falls within the tolerance range. The final total human resource demand, the final total material resource demand, and the final financial resource demand of each task node unit determined after the resource balancing optimization process are encapsulated into the human resource quota unit, the material resource quota unit, and the financial resource quota unit, and a resource allocation quota set bound to the identification code is generated.
5. The integrated project lifecycle management method based on digital thread technology according to claim 1, characterized in that, The process of generating the initial digital lead model for the project by integrating the task temporal dependency network and the resource allocation quota set includes: Each task node unit in the task temporal dependency network is used as a modeling primitive of the initial digital mainline model of the project, and a corresponding data structure instance is created for each modeling primitive. Write the identifier code as the primary key field of the data structure instance, write the estimated duration parameter as the time attribute field of the data structure instance, and split the resource allocation quota set into human resources field, material resources field and financial resources field and write them into the resource attribute substructure of the data structure instance respectively. Extract the preceding and succeeding logical edges from the task temporal dependency network, and use the starting point identifier and the ending point identifier of the preceding and succeeding logical edges as the source node field and target node field of the association tuple, respectively, to construct the association mapping table between the modeling primitives; The project scope boundary description unit and the project timeline baseline unit are attached as global metadata to the root node of the project initial digital master model. The global metadata is used to describe the overall context of the project initial digital master model. Based on the association mapping table, the data structure instances are topologically sorted according to the directions of the preceding and succeeding logical edges to generate a linear execution sequence of modeling primitives with a time flow order; An interface matching check is performed on adjacent data structure instances in the linear execution sequence to ensure that the output delivery vocabulary of the preceding data structure instance and the input dependency vocabulary of the subsequent data structure instance have a semantic inclusion or being included relationship. If the interface matching check finds a semantic mismatch, an intermediate transformation node unit is inserted between the mismatched data structure instances. The intermediate transformation node unit is used to convert the output delivery vocabulary of the preceding data structure instance into the input dependency vocabulary format that the subsequent data structure instance can recognize. The inserted intermediate conversion node unit is also used as the modeling primitive, a temporary identifier code is assigned and associated with the corresponding resource consumption quota, and the intermediate conversion node unit is added to the association mapping table and the linear execution sequence; Perform cyclic dependency detection on the complete set of modeling primitives containing the intermediate transformation node units, traverse all paths formed by the preceding and succeeding logical edges, and if a closed loop is found that starts from any modeling primitive, passes through several preceding and succeeding logical edges, and then returns to the modeling primitive itself, then adjust the logical relationship between the modeling primitives in the closed loop and break the closed loop. All modeling primitives and their relationships that pass the circular dependency detection and interface matching checks are serialized and persistently stored to generate an initial digital masterline model of the project containing all task node units and intermediate transformation node units.
6. The integrated project lifecycle management method based on digital thread technology according to claim 5, characterized in that, After serializing and persistently storing all the modeling primitives and their relationships that have passed the circular dependency detection and interface matching check, and generating an initial digital master model of the project containing all the task node units and the intermediate transformation node units, the method further includes: The real-time project status feedback data stream generated during the project execution phase is obtained. The real-time project status feedback data stream includes the actual start time, actual completion time, actual resource consumption, and actual output description information of each task node unit. Based on the identification code, each record in the real-time project status feedback data stream is associated and bound with the data structure instance of the corresponding task node unit in the initial digital master model of the project. For each bound task node unit, the time offset between the actual start time and the earliest start time is calculated as the start deviation value, and the time offset between the actual completion time and the earliest completion time is calculated as the completion deviation value. The start-up deviation value and the completion deviation value are compared with a preset deviation tolerance threshold. If the start-up deviation value or the completion deviation value exceeds the deviation tolerance threshold, the task node unit is marked as a progress abnormal node unit. Extract all task node units marked as the progress anomaly node units and all their successors to form a progress impact propagation subnetwork. Based on the time difference reserve of each task node unit in the progress impact propagation sub-network, and in combination with the start deviation value and the completion deviation value, the earliest start time and the earliest completion time of the affected subsequent task node units after adjustment are recalculated. The adjusted earliest start time and the adjusted earliest finish time are compared with the original latest start time and the latest finish time of the subsequent task node unit to identify task node units that may generate new critical paths. Based on the difference between the actual resource consumption and the corresponding amount in the human resources quota unit, the material resources quota unit, and the financial resources quota unit, a resource overspending or surplus record is generated for each task node unit. The information of the progress anomaly node units, the earliest start time after adjustment, and the resource overspending or surplus records are summarized to generate a project current status deviation report and write it into the dynamic status layer of the project initial digital master model. The updated project initial digital master model is then stored as the project dynamic digital master model.
7. The integrated project lifecycle management method based on digital thread technology according to claim 6, characterized in that, After generating a resource overspending or surplus record for each task node unit based on the difference between the actual resource consumption and the corresponding quotas in the human resources quota unit, the material resources quota unit, and the financial resources quota unit, the method further includes: Traverse all the task node units and select the task node units with resource overrun records as resource-scarce node units; Obtain the identifier code of the resource-scarce node unit, and search for all the successor task node units with the resource-scarce node unit as the predecessor node according to the association mapping table; Analyze the input dependency words of the subsequent task node unit to identify the key input materials or key human resource roles necessary for the activation of the subsequent task node unit; The resource overrun type of the resource-scarce node unit is matched and analyzed with the key input materials and key human resource roles of the subsequent task node unit to determine the degree of impact of resource shortage on subsequent tasks. Based on the level of impact, emergency resource quotas are allocated from the unallocated resource reserve pool in the project resource budget allocation unit to the resource-scarce node unit, and the human resource quota unit, material resource quota unit, and financial resource quota unit of the resource-scarce node unit are updated. If the available quota in the resource reserve pool is insufficient to cover the resource overspending of the resource-scarce node unit, then the cross-project resource borrowing process is initiated, a resource borrowing request is sent to the associated external project system and the returned resource borrowing confirmation information is received. Based on the type and quantity of borrowed resources carried in the resource borrowing confirmation information, the corresponding resource quota unit of the resource shortage node unit is temporarily increased, and the return plan of the borrowed resources is recorded in the actual resource consumption after the completion of the resource shortage node unit. The estimated duration parameters of all task node units that have undergone resource allocation are recalculated. Based on the impact of increased resources on work efficiency, the remaining estimated duration parameters of the task node unit are adjusted, and the adjusted remaining estimated duration parameters are written into the project dynamic digital master model. The resource borrowing request sending record, the resource borrowing confirmation information receiving record, and the resource quota unit update record are used as resource dynamic adjustment logs and attached to the audit trajectory layer of the project dynamic digital mainline model to generate an enhanced project dynamic digital mainline model containing complete resource change history tracing information.
8. The integrated project lifecycle management method based on digital thread technology according to claim 1, characterized in that, After generating the initial digital lead model for the project by integrating the task temporal dependency network and the resource allocation quota set, the method further includes: Obtain the engineering change order triggered by the project change control process. The engineering change order includes a description of the scope of impact of the change, a detailed description of the change content, and the change implementation time window requirements. Parse the description of the scope of impact of the engineering change order and extract the name of the affected work package or the identification code fragment mentioned in the description of the scope of impact of the change; Based on the name of the affected work package or the identification code fragment, locate the corresponding task node unit in the initial digital master model of the project as the change starting point node unit; Starting from the change starting node unit, perform a forward breadth-first traversal along the direction of the predecessor and successor logical edge, and mark all reachable task node units as a potentially affected node unit set. For each task node unit in the set of potentially affected node units, analyze the degree of correlation between the detailed description of the change content and the specific project work package of the task node unit, and calculate the change ripple coefficient of each task node unit; Task node units whose change impact coefficient exceeds a preset impact threshold are selected from the potentially affected node unit set to form the actual change-affected node unit set. For each task node unit in the set of actual change-affected node units, adjust the content description text of its specific project work package according to the detailed description of the change content, and regenerate the adjusted estimated duration parameter and the adjusted resource allocation quota set. Based on the adjusted estimated duration parameters and the constraints of the unchanged task node units outside the actual change-affected node unit set in the task time-series dependency network, recalculate the earliest start time, latest start time, and time difference reserve of all nodes related to the actual change-affected node unit set. The earliest start time, latest start time, and time difference reserve are recalculated and verified to meet the requirements of the change implementation time window. If there is a conflict, the estimated duration parameters or resource input of some task node units in the actual change-affected node unit set are iteratively adjusted until they meet the requirements of the change implementation time window. Write the updated feature parameters of all adjusted task node units back into the initial digital master model of the project, replacing the original corresponding feature parameters, and generate the project modified digital master model containing the execution results of the engineering change order.
9. The integrated project lifecycle management method based on digital thread technology according to claim 1, characterized in that, After generating the initial digital lead model for the project by integrating the task temporal dependency network and the resource allocation quota set, the method further includes: Obtain the list of quality control points defined in the project quality management plan. The list of quality control points includes the inspection object identifier, inspection timing trigger conditions, and a detailed list of inspection items for each quality control point. Match the inspection object identifiers in the quality control point list with the identifier codes of the task node units in the initial digital master model of the project to determine the target task node unit that each quality control point needs to be bound to. Based on the inspection timing triggering conditions, a quality inspection trigger flag is set for each bound task node unit in the task time sequence dependency network, and the quality inspection trigger flag is associated with the storage address of the detailed list of inspection items; During project execution, when the actual completion time of any of the task node units is recorded, a loading instruction for the detailed list of inspection items of the quality control points bound to it is triggered. For each inspection item in the detailed list of inspection items, the corresponding measured value of the inspection indicator is extracted from the actual output description information of the task node unit, and the measured value of the inspection indicator is compared with the preset quality standard value in the detailed list of inspection items. If the measured values of all the inspection items meet the quality standard values, a quality release identifier for passing the quality control point is generated, and the quality release identifier is appended to the status field of the data structure instance of the task node unit. If the measured value of any of the above-mentioned inspection items does not meet the quality standard value, then the task node unit is marked as a quality abnormality node unit, and the execution permissions of the quality abnormality node unit and all its subsequent task node units are frozen. Based on the quality problem type corresponding to the non-compliant inspection item, a corresponding defect repair process is matched from the preset defect handling process library, and a defect repair task node unit is attached to the quality anomaly node unit. The defect repair task node unit has an independent identification code, the estimated duration parameter, and the resource allocation quota set. The defect repair task node unit is inserted after the quality anomaly node unit and before its original successor task node unit in the task temporal dependency relationship network to generate the repaired execution path. The updated task temporal dependency relationship network is then synchronized to the project's initial digital mainline model to generate a project quality-enhanced digital mainline model that includes quality closed-loop control functions.
10. A project lifecycle integrated management system based on digital thread technology, characterized in that, The method includes a processor and a computer-readable storage medium storing machine-executable instructions, which, when executed by a computer, implement the integrated project lifecycle management method based on digital thread technology as described in any one of claims 1-9.