Process modeling data processing method for human-machine collaboration and related equipment

By designing a dual-storage architecture, independent storage and rendering calculations of the swimlane relative coordinate system are achieved, solving the problem of low efficiency in swimlane-style process modeling and improving the system's scalability and rendering performance.

CN122111988BActive Publication Date: 2026-07-07GUOSEN SECURITIES
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202610583361.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2026-04-29
Publication Date
2026-07-07
Estimated Expiration
2046-04-29

Smart Images

  • Figure CN122111988B_ABST
    Figure CN122111988B_ABST
Patent Text Reader

Abstract

The embodiment of the present application relates to the technical field of computer-aided software engineering, and discloses a process modeling data processing method for human-computer collaboration and related equipment, which comprises: establishing a double-storage architecture for process modeling, including a business data storage module and a layout data storage module, the business data storage module storing entity data, and the layout data storage module storing relative coordinates of each node in a swimlane relative coordinate system and arrangement order of the swimlane on a canvas; in response to an adjustment operation of the swimlane arrangement order, obtaining the adjusted swimlane arrangement order and storing it in the layout data storage module; determining the offset of each swimlane on the canvas based on the adjusted swimlane arrangement order during rendering; and determining new absolute coordinates of the nodes in the canvas according to the relative coordinates and the offset of each swimlane and performing rendering update. Through the above method, the embodiment of the present application decouples business data and layout data, can improve modeling efficiency, reduce overhead and significantly improve performance.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of computer-aided software engineering technology, specifically to a process modeling data processing method and related equipment for human-computer collaboration. Background Technology

[0002] Existing modeling tools typically employ a data architecture that tightly couples business data with view data. While software engineering has established general architecture patterns for layered data and view structures, such as Model-View-Controller (MVC) and MVVM, these patterns face unique challenges when applied to swimlane-style process modeling. First, the ViewModel layer is usually tightly dependent on the Model layer's data structure. Modifying layout-related data structures or algorithms can affect the business logic layer's code; conversely, changes in the business logic layer can also impact the view layer. The two cannot evolve independently, limiting system scalability. Second, swimlane layout presents a unique problem: the canvas position of a node depends on its position within the swimlane. When the swimlane order is adjusted, traditional coordinate storage schemes require batch updates of all node coordinates, which is inefficient in large-scale process models. Summary of the Invention

[0003] In view of the above problems, embodiments of the present invention provide a process modeling data processing method and related equipment for human-machine collaboration, which are used to solve the problems existing in the prior art.

[0004] According to one aspect of the present invention, a process modeling data processing method for human-computer collaboration is provided, the method comprising:

[0005] A dual-storage architecture for process modeling is established, comprising a business data storage module for entity identification association and a layout data storage module. The business data storage module stores the entity data of the process model, and the layout data storage module stores the relative coordinates of each node of the process model in the swimlane relative coordinate system and the arrangement order of the swimlanes on the canvas. The swimlane relative coordinate system is a local coordinate system with the upper left corner of each swimlane as the origin. The relative coordinates of the nodes are obtained based on the absolute coordinates of the nodes in the canvas and the arrangement order of the swimlanes to which the nodes belong on the canvas.

[0006] In response to the adjustment operation of the lane arrangement order, the adjusted lane arrangement order is obtained and stored in the layout data storage module;

[0007] During rendering, the offset of each swimlane on the canvas is determined based on the adjusted swimlane arrangement order;

[0008] The new absolute coordinates of the node in the canvas are determined based on the relative coordinates of the node and the offset of each lane, and the rendering is updated based on the new absolute coordinates.

[0009] In one alternative approach, determining the offset of each swimlane on the canvas during rendering, based on the adjusted swimlane arrangement order, includes:

[0010] During rendering, the offset of each swimlane on the canvas is determined based on the adjusted swimlane arrangement order, the top margin between the top edge of the canvas and the swimlane closest to the top edge of the canvas, the height of the swimlane, and the distance between two adjacent swimlanes.

[0011] In one alternative approach, the entity data includes multiple types of execution roles, and the method further includes:

[0012] During process modeling, in response to the file loading operation of the process model, the arrangement order of the swimlanes on the canvas is obtained from the layout data storage module. Based on the arrangement order of the swimlanes on the canvas and the absolute coordinates of each node on the canvas, the relative coordinates of each node in the swimlane relative coordinate system are determined and stored in the layout data storage module.

[0013] In response to the rendering operation of the process model, the relative coordinates of each node are obtained from the layout data storage module. Based on the relative coordinates of each node and the arrangement order of the swimlanes on the canvas, the absolute coordinates of each node on the canvas are determined. Multiple types of execution roles are obtained from the business data storage module. Based on the absolute coordinates of each node on the canvas and the multiple types of execution roles, visually differentiated swimlanes are used for rendering, with each swimlane corresponding to one type of execution role.

[0014] In one alternative approach, after rendering with visually differentiated swimlanes, the method further includes:

[0015] Detect whether each node has absolute coordinates in the canvas;

[0016] If so, perform grid alignment to snap the position of each node in the canvas to the grid point in the canvas that is closest to the absolute coordinates;

[0017] If not, a hierarchical layout algorithm is used to perform a complete rearrangement to calculate and arrange the positions of each node globally.

[0018] In one optional approach, the node includes a task node, an event node, and a gateway node. The task node determines the swimlane affiliation through its associated execution role. The event node and the gateway node determine the swimlane affiliation through a four-level priority mechanism. After determination, the swimlane affiliation labels of the event node and the gateway node are stored in the layout data storage module.

[0019] In an alternative approach, the method further includes:

[0020] In response to a drag operation on the canvas involving the event node or the gateway node, when the event node or the gateway node is dragged to a new swimlane, the swimlane ownership label of the event node or the gateway node in the layout data storage module is updated to the swimlane ownership label corresponding to the new swimlane.

[0021] In an alternative approach, the method further includes:

[0022] If a task node is associated with a multidimensional evaluation score, then based on the multidimensional evaluation score, the corresponding automation readiness level logo is rendered on the task node in real time. The level logo includes four levels: fully automated, assisted automated, human-dominated, and purely human, with each level represented by a different style.

[0023] According to another aspect of the present invention, a process modeling data processing system for human-machine collaboration is provided, the system comprising:

[0024] A module is established to create a dual-storage architecture for process modeling. The dual-storage architecture includes a business data storage module for entity identification association and a layout data storage module. The business data storage module stores the entity data of the process model, and the layout data storage module stores the relative coordinates of each node of the process model in the swimlane relative coordinate system and the arrangement order of the swimlanes on the canvas. The swimlane relative coordinate system is a local coordinate system with the upper left corner of each swimlane as the origin. The relative coordinates of the nodes are obtained based on the absolute coordinates of the nodes in the canvas and the arrangement order of the swimlanes to which the nodes belong on the canvas.

[0025] An adjustment module is used to respond to the adjustment operation of the lane arrangement order, obtain the adjusted lane arrangement order, and store it in the layout data storage module;

[0026] A determination module is used to determine the offset of each swimlane on the canvas based on the adjusted swimlane arrangement order during rendering;

[0027] The rendering module is used to determine the new absolute coordinates of the node in the canvas based on the relative coordinates of the node and the offset of each lane, and to perform rendering updates based on the new absolute coordinates.

[0028] According to another aspect of the present invention, a computer device is provided, comprising: a processor, a memory, a communication interface, and a communication bus, wherein the processor, the memory, and the communication interface communicate with each other via the communication bus; the memory is used to store at least one executable instruction, wherein the executable instruction causes the processor to perform the method described above.

[0029] According to another aspect of the present invention, a computer-readable storage medium is provided, the storage medium storing at least one executable instruction, which, when executed on a computer device, causes the computer device to perform the method described above.

[0030] This invention establishes a dual-storage architecture for process modeling. The dual-storage architecture includes a business data storage module associated with entity identifiers and a layout data storage module. The business data storage module stores the entity data of the process model, while the layout data storage module stores the relative coordinates of each node in the process model in the swimlane relative coordinate system and the arrangement order of the swimlanes on the canvas. When the swimlane arrangement order is adjusted, the adjusted swimlane arrangement order is stored in the layout data storage module. During rendering, the offset of each swimlane is determined based on the adjusted swimlane arrangement order. The new absolute coordinates of the nodes in the canvas are determined according to the relative coordinates and offsets of the nodes, and the rendering is updated according to the new absolute coordinates. The swimlane relative coordinate system concept proposed in this embodiment stores the relative coordinates of each node's position in the layout data storage module with the top-left corner of its respective swimlane as the origin, rather than directly storing the absolute coordinates of the canvas. The unique advantage of this design is that when the swimlane arrangement order changes, only the adjusted swimlane arrangement order needs to be re-stored in the layout data storage module. During rendering, the swimlane offset is calculated using the adjusted swimlane arrangement order to obtain the absolute coordinates on the canvas, completing the rendering update. The relative coordinates of all nodes in the layout data storage module do not need to be modified. This is fundamentally different from the traditional technology that directly stores absolute coordinates and requires batch updates of node absolute coordinate storage when the swimlane arrangement changes. This embodiment decouples business data from layout data, eliminating the need for batch updates of node absolute coordinate storage when the swimlane arrangement changes. This improves modeling efficiency, greatly reduces overhead, and significantly enhances performance. Furthermore, the decoupling of business data from layout data allows them to evolve independently, giving the system higher scalability.

[0031] The above description is merely an overview of the technical solutions of the embodiments of the present invention. In order to better understand the technical means of the embodiments of the present invention and to implement them in accordance with the contents of the specification, and to make the above and other objects, features and advantages of the embodiments of the present invention more apparent and understandable, specific embodiments of the present invention are described below. Attached Figure Description

[0032] The accompanying drawings are for illustrative purposes only and are not intended to limit the invention. Furthermore, the same reference numerals denote the same parts throughout the drawings. In the drawings:

[0033] Figure 1 A flowchart illustrating the process modeling data processing method for human-machine collaboration provided in an embodiment of the present invention is shown.

[0034] Figure 2 This diagram illustrates the structure of the business data storage module and the layout data storage module associated with entity identifiers.

[0035] Figure 3 This diagram illustrates the structure of a human-machine collaboration-oriented process modeling data processing system provided in an embodiment of the present invention.

[0036] Figure 4 A schematic diagram of the structure of a computer device provided in an embodiment of the present invention is shown. Detailed Implementation

[0037] Exemplary embodiments of the invention will now be described in more detail with reference to the accompanying drawings. While exemplary embodiments of the invention are shown in the drawings, it should be understood that the invention can be implemented in various forms and should not be limited to the embodiments set forth herein.

[0038] Figure 1 The following is a flowchart illustrating the process modeling data processing method for human-computer collaboration provided in an embodiment of the present invention. Figure 1 As shown, the method includes the following steps:

[0039] Step 10: Establish a dual-storage architecture for process modeling. The dual-storage architecture includes a business data storage module associated with entity identifiers and a layout data storage module. The business data storage module stores the entity data of the process model. The layout data storage module stores the relative coordinates of each node of the process model in the swimlane relative coordinate system and the arrangement order of the swimlanes on the canvas. The swimlane relative coordinate system is a local coordinate system with the upper left corner of each swimlane as the origin. The relative coordinates of the nodes are obtained based on the absolute coordinates of the nodes in the canvas and the arrangement order of the swimlanes to which the nodes belong on the canvas.

[0040] Combination Figure 2The business data storage module stores the entity data of the process model, including process domains, activities, tasks, execution roles, artifacts, events, gateways, connections, policies, standards, etc. One process domain corresponds to a management domain or business domain. Activities are the executable business operations of a process domain, and tasks are the underlying work execution units of activities. Each process domain contains at least one activity, and each activity contains at least one task. The entity data of a task includes multiple dimensions: task identifier, input / output artifact set, execution logic, execution role, constraints, and deterministic classification. Execution roles include various types, such as system roles and human roles, with each swimlane corresponding to one type of execution role.

[0041] The layout data storage module independently stores the position (x, y coordinates, width, and height) of each node in the swimlane relative coordinate system, the swimlane assignment label (roleHint), the control point coordinate sequence of each edge, viewport information (x / y translation and zoom), and the swimlane arrangement order (roleId array). The swimlane relative coordinate system is a local coordinate system with the top-left corner of each swimlane as the origin. The node position is stored relative to the relative coordinate system of its swimlane and is independent of the swimlane arrangement order.

[0042] The two storage modules are associated through entity identifiers but have no direct data dependency, thus achieving decoupling. This decoupling allows them to evolve independently, giving the system higher scalability. It enables the same set of business data to support multiple visualization layout perspectives, and modifying data in the layout data storage module does not affect the integrity of business data. When importing new business data into the business data storage module, the initial layout can be generated through the automatic layout engine.

[0043] Step 20: In response to the lane arrangement order adjustment operation, obtain the adjusted lane arrangement order and store it in the layout data storage module.

[0044] When adjusting the swimlane arrangement order on the canvas, for example, by using the up and down arrows, you only need to obtain the adjusted swimlane arrangement order and update the swimlane arrangement order in the layout data storage module to the adjusted swimlane arrangement order.

[0045] In existing technology, when the lane order changes, the system must traverse all affected nodes. For each node, the following steps are performed:

[0046] 1. Read the old absolute coordinates of the node.

[0047] 2. Calculate its new absolute coordinates in the new lane order, which requires knowing the new position of its lane.

[0048] 3. Write the new absolute coordinates back to the storage module. This is a critical data modification operation.

[0049] Existing technologies suffer from performance bottlenecks. It is an I / O-intensive and computationally intensive mixed operation with a complexity of O(m) (where m is the number of nodes), involving the reading, computation, and writing back of a large amount of stored data.

[0050] In this embodiment, when the up and down arrows are clicked to adjust the order, the system only recalculates the swimlane offset array, which is a pure calculation with a complexity of only O(n) (n is the number of swimlanes, which is usually much smaller than the number of nodes m). In addition, the system only calculates the swimlane offset array, without involving the reading of a large amount of stored data, and does not modify the coordinate data of any node in the layout storage.

[0051] The data modification operation with a complexity of O(m) is downgraded to a pure computation operation with a complexity of O(n). Since the number of swimlanes n is usually much smaller than the number of nodes m, for example, by an order of magnitude, the performance of this embodiment is greatly improved.

[0052] Step 30: During rendering, determine the offset of each swimlane on the canvas based on the adjusted swimlane arrangement order.

[0053] The layout data storage module can further store the layout metadata of the lanes, including data such as top margin, left margin, lane height, and spacing. By adjusting the lane arrangement order and the lane layout metadata, the offset of each lane on the canvas can be determined. This offset refers to the offset along the height direction of the lane.

[0054] Furthermore, during rendering, based on the adjusted swimlane arrangement order, the offset of each swimlane on the canvas is determined, including:

[0055] During rendering, the offset of each swimlane on the canvas is determined based on the adjusted swimlane arrangement order, the top margin between the top edge of the canvas and the swimlane closest to the top edge of the canvas, the height of the swimlane, and the distance between two adjacent swimlanes.

[0056] The top margin, swimlane height, and spacing between adjacent swimlanes are stored as basic layout parameters in the layout data storage module. The offset of each swimlane on the canvas is calculated cumulatively based on their arrangement order: the offset of the first swimlane closest to the top edge of the canvas is equal to its top margin, and the offset of the Nth swimlane is equal to the sum of the heights and spacings of the previous N-1 swimlanes plus their top margins. When the swimlane arrangement order changes, the offset can be calculated during rendering using the stored swimlane arrangement order. This offset allows for the calculation of the absolute coordinates of the nodes within each swimlane on the canvas, without needing to modify the relative coordinates in the layout data storage module.

[0057] Step 40: Determine the new absolute coordinates of the node in the canvas based on the relative coordinates of the node and the offset of each lane, and perform rendering update based on the new absolute coordinates.

[0058] The new absolute coordinates, including the new absolute x-coordinate and y-coordinate, can be calculated using the conversion formula:

[0059] New absolute x-coordinate = relative x-coordinate + left margin;

[0060] New absolute ordinate = relative ordinate + offset;

[0061] The left margin is the distance between the left side of the lane and the left side of the canvas.

[0062] Specifically, during rendering, the rendering engine begins working, drawing the nodes within the current viewport. For each node that needs to be drawn:

[0063] 1. Read the relative coordinates of the swimlane of this node. These relative coordinates are stored in the layout data storage module when the file is loaded and will not change.

[0064] 2. Read the offset of its lane;

[0065] 3. Calculate the new absolute coordinates temporarily used for this rendering using the above conversion formula.

[0066] The calculation using the conversion formula is part of the rendering pipeline. Its output is the drawing instructions sent to the GPU. The calculation result does not need to be written back to the persistent layout data storage module. It is a temporary, in-memory calculation that serves the current frame or the swimlane arrangement order.

[0067] The rendered canvas displays a complete set of primitives corresponding to each activity across multiple activities, including: various differentiated border swimlanes (e.g., solid line swimlanes for human roles, dotted line swimlanes for system roles), 3 types of task nodes (task, decision, review), 6 types of events (start, end, intermediate, timed, message, signal), 3 types of gateways (exclusive, parallel, inclusive), and 3 types of connections (control flow, data flow, message flow). All connections use orthogonal polyline paths.

[0068] This embodiment does not eliminate computation during rendering, but its advantage lies in avoiding persistent modifications to massive amounts of node data when adjusting the swimlane arrangement order. This embodiment decouples layout data and business data; adjusting the swimlane arrangement order only updates the swimlane arrangement order in the layout data storage module, without affecting the modification of node position data, making the operation lightweight and atomic. Rendering computation is unavoidable, but rendering is efficient: the coordinate composition calculation during rendering is very simple, performing only one addition, and can be efficiently handled by modern graphics pipelines. This computational overhead is far lower than the existing technology of traversing the database or in-memory data structures to update the coordinate values ​​of each node. This embodiment achieves a significant performance improvement by changing the data storage mode—storing relative coordinates instead of absolute coordinates—transforming the time-consuming, persistent data update operation triggered by adjusting swimlanes into a lightweight computation.

[0069] Empirical verification shows that in a process model with 200 nodes, the traditional absolute coordinate scheme requires batch updating the coordinates of all 200 nodes to adjust the swimlane order, taking approximately 50 milliseconds. In contrast, under the same scale, the response time for the swimlane order adjustment operation in this embodiment is less than 16 milliseconds, meeting the requirements for 60fps real-time rendering.

[0070] This invention establishes a dual-storage architecture for process modeling. The dual-storage architecture includes a business data storage module associated with entity identifiers and a layout data storage module. The business data storage module stores the entity data of the process model, while the layout data storage module stores the relative coordinates of each node in the process model in the swimlane relative coordinate system and the arrangement order of the swimlanes on the canvas. When the swimlane arrangement order is adjusted, the adjusted swimlane arrangement order is stored in the layout data storage module. During rendering, the offset of each swimlane is determined based on the adjusted swimlane arrangement order. The new absolute coordinates of the nodes in the canvas are determined according to the relative coordinates and offsets of the nodes, and the rendering is updated according to the new absolute coordinates. The swimlane relative coordinate system concept proposed in this embodiment stores the relative coordinates of each node's position in the layout data storage module with the top-left corner of its respective swimlane as the origin, rather than directly storing the absolute coordinates of the canvas. The unique advantage of this design is that when the swimlane arrangement order changes, only the adjusted swimlane arrangement order needs to be re-stored in the layout data storage module. During rendering, the swimlane offset is calculated using the adjusted swimlane arrangement order to obtain the absolute coordinates on the canvas, completing the rendering update. The relative coordinates of all nodes in the layout data storage module do not need to be modified. This is fundamentally different from the traditional technology that directly stores absolute coordinates and requires batch updates of node absolute coordinate storage when the swimlane arrangement changes. This embodiment decouples business data from layout data, eliminating the need for batch updates of node absolute coordinate storage when the swimlane arrangement changes. This improves modeling efficiency, greatly reduces overhead, and significantly enhances performance. Furthermore, the decoupling of business data from layout data allows them to evolve independently, giving the system higher scalability.

[0071] In an optional embodiment, the entity data includes multiple types of execution roles, and the method further includes:

[0072] During process modeling, in response to the file loading operation of the process model, the arrangement order of the swimlanes on the canvas is obtained from the layout data storage module. Based on the arrangement order of the swimlanes on the canvas and the absolute coordinates of each node on the canvas, the relative coordinates of each node in the swimlane relative coordinate system are determined and stored in the layout data storage module.

[0073] In response to the rendering operation of the process model, the relative coordinates of each node are obtained from the layout data storage module. Based on the relative coordinates of each node and the arrangement order of the swimlanes on the canvas, the absolute coordinates of each node on the canvas are determined. Multiple types of execution roles are obtained from the business data storage module. Based on the absolute coordinates of each node on the canvas and the multiple types of execution roles, visually differentiated swimlanes are used for rendering, with each swimlane corresponding to one type of execution role.

[0074] During the loading of the process model file, the relative coordinates of each node in the swimlane relative coordinate system are obtained using the following transformation formula:

[0075] Relative x-coordinate = absolute x-coordinate - left margin;

[0076] Relative ordinate = Absolute ordinate - Offset.

[0077] During the loading of the process modeling file, the absolute coordinates of each node in the canvas can be obtained first (these absolute coordinates can be discarded after use), and then converted into relative coordinates for storage. Using the above conversion formula, the relative coordinates of each node are obtained with the top-left corner of the swimlane to which the node belongs as the origin. These relative coordinates can be persistently stored in the layout data storage module after a single conversion, so they can be directly used when adjusting the swimlane arrangement order. They generally do not require updating, and are only automatically updated in a few cases, such as when a user creates a new node on the canvas, which adds the relative coordinates of that node in the swimlane's relative coordinate system.

[0078] When rendering after the file is loaded, the relative coordinates of each node are obtained directly from the layout data storage module, and the absolute coordinates of each node in the canvas are obtained through the following conversion formula:

[0079] Absolute x-coordinate = relative x-coordinate + left margin;

[0080] Absolute ordinate = relative ordinate + offset.

[0081] After rendering, the canvas contains visually differentiated swimlanes, where the swimlanes are horizontal containers with a label area on the left that displays the executing role and a content area on the right, where the nodes are interconnected.

[0082] Furthermore, after rendering using visually differentiated swimlanes, it also includes:

[0083] Detect whether each node has absolute coordinates in the canvas;

[0084] If so, perform grid alignment to snap the position of each node in the canvas to the grid point in the canvas that is closest to the absolute coordinates;

[0085] If not, a hierarchical layout algorithm is used to perform a complete rearrangement to calculate and arrange the positions of each node globally.

[0086] For an existing process model, the absolute coordinates of its nodes come from external file loading or are newly created within the system but not manually placed. Before performing automatic layout, it is necessary to determine whether to perform grid alignment or full rearrangement. This determination is based on the rendering level, i.e., whether the positions of all nodes already exist on the canvas, that is, whether the nodes already have absolute coordinates on the canvas. If the nodes already have absolute coordinates on the canvas, then grid alignment is performed, snapping each node's position on the canvas to the grid point closest to its absolute coordinates. Otherwise, a hierarchical layout algorithm is used to perform full rearrangement. Full rearrangement is an automatically triggered layout algorithm that performs a global, completely new position calculation and arrangement for all nodes in the entire process model and generates their initial coordinates.

[0087] 1. Global Calculation: Based on the topology of the process (i.e. the logical relationship between nodes and connections), and combined with preset layout parameters, the position of all nodes (including existing and missing coordinates) is calculated uniformly.

[0088] 2. Execute parameter settings according to preset rules: the node direction is horizontal, arranged from left to right, the spacing is 50 pixels between nodes in the same lane, the spacing between nodes in adjacent lanes is 160 pixels, and the alignment is that the node is vertically centered in its own lane.

[0089] 3. Data generation: The final position is calculated and converted into relative coordinates, which are then stored in the layout data storage module to complete the coordinates for all nodes.

[0090] This embodiment performs automatic layout after rendering, including performing grid alignment or complete rearrangement, which can automatically generate or regulate the position of nodes on the canvas, making the overall layout of nodes neat, standardized and beautiful.

[0091] Furthermore, after rendering using visually differentiated swimlanes, the process also includes obtaining constraints from the task entity data in the business data storage module and validating the process model through a validation engine. This includes validation based on constraint rules, such as process domain integrity, activity integrity, input / output integrity, and role uniqueness. If the constraints in the task entity data are not met, the validation fails. This validation ensures that the process model has high accuracy.

[0092] In an optional embodiment, the nodes include task nodes, event nodes, and gateway nodes. The task nodes determine swimlane assignment through associated execution roles, and the event nodes and gateway nodes determine swimlane assignment through a four-level priority mechanism. After determination, the swimlane assignment labels of the event nodes and gateway nodes are stored in the layout data storage module. The method further includes:

[0093] In response to a drag operation on the canvas involving the event node or the gateway node, when the event node or the gateway node is dragged to a new swimlane, the swimlane ownership label of the event node or the gateway node in the layout data storage module is updated to the swimlane ownership label corresponding to the new swimlane.

[0094] The entity data of a task includes an execution role. Therefore, task nodes determine their swimlane affiliation based on their associated execution roles. Event nodes and gateway nodes are not associated with execution roles, so a four-level priority mechanism is used to determine their corresponding visual swimlane affiliation. Specifically, the first priority is to check the explicit swimlane affiliation annotation `roleHint` of the node in the layout data storage module to determine the corresponding visual swimlane affiliation. The second priority is to find the execution role of directly connected task nodes, i.e., to traverse all connections of the node and take the swimlane corresponding to the execution role of the task node at the other end of the connection as the swimlane affiliation. The third priority is to expand to a two-hop neighbor search if the swimlane is not found in the first hop and determine the corresponding visual swimlane affiliation within the two-hop search range. The fourth priority is to default to the swimlane of the first-ranked role.

[0095] When an event node or gateway node is dragged by a user on the canvas, for event nodes or gateway nodes dragged within the same swimlane, it is not necessary to update the swimlane assignment label in the layout data storage module. If an event node or gateway node is dragged across swimlanes, the swimlane assignment label is updated in the layout data storage module at the same time, and the absolute ordinate of the canvas is subtracted from the swimlane offset to obtain its corresponding relative ordinate, which is then written back to the layout data storage module for storage. The absolute x-coordinate and relative x-coordinate of the event node or gateway node on the canvas are the same, so the absolute x-coordinate on the canvas can be directly used as the relative x-coordinate to update the layout data storage module.

[0096] This embodiment transforms and normalizes the results of user interaction (the new absolute coordinates after dragging) into relative coordinates and persists them, ensuring a single reliable source for the layout data storage module and avoiding data source chaos. This lays the data foundation for adjusting the swimlane arrangement order without modifying the node coordinates. For event nodes and gateway nodes without direct role association, when they are dragged across swimlanes, the system automatically updates their swimlane ownership label (roleHint). This label is the first priority in the four-level priority mechanism, which allows the system to accurately record the user's layout intention (manually placing nodes), improving the certainty of the user experience and the predictability of the tool.

[0097] In an optional embodiment, the method further includes:

[0098] If a task node is associated with a multidimensional evaluation score, then based on the multidimensional evaluation score, the corresponding automation readiness level logo is rendered on the task node in real time. The level logo includes four levels: fully automated, assisted automated, human-dominated, and purely human, with each level represented by a different style.

[0099] The multidimensional evaluation score refers to a set of quantitative scores designed to assess the automation readiness (or automation suitability) of a task node. It is an attribute in the entity data of the task stored in the business data storage module. This score is used to calculate and determine the style of automation readiness level logo to be rendered on that task node. The dimensions of the multidimensional evaluation score can include multiple aspects such as the cognitive complexity of the task, the clarity of rules, the stability of processing time, the standardization of required permissions, the level of structured input and output data, and the predictability of anomaly handling. Quantifying and summing these multidimensional data yields the multidimensional evaluation score, which comprehensively judges the degree to which a task is suitable for automation. This visualizes the automation maturity or expected automation level of each stage in the process, achieving information visualization and decision support, and significantly improving the expressive power and practicality of the modeling tool.

[0100] When a task node is associated with a multi-dimensional evaluation score, an automation readiness level logo with four different styles is rendered in the lower right corner of the task node: fully automated level (e.g., blue background with white text), assisted automation level (e.g., blue frame with blue text), human-dominated level (e.g., gray frame with gray text), and purely human level (e.g., red frame with red text). The logo is updated in real time when the multi-dimensional evaluation score changes.

[0101] Figure 3 A schematic diagram of the structure of a process modeling data processing system for human-machine collaboration according to an embodiment of the present invention is shown. Figure 3 As shown, the system includes:

[0102] Module 301 is established to establish a dual-storage architecture for process modeling. The dual-storage architecture includes a business data storage module for entity identification association and a layout data storage module. The business data storage module stores the entity data of the process model. The layout data storage module stores the relative coordinates of each node of the process model in the swimlane relative coordinate system and the arrangement order of the swimlanes on the canvas. The swimlane relative coordinate system is a local coordinate system with the upper left corner of each swimlane as the origin. The relative coordinates of the nodes are obtained based on the absolute coordinates of the nodes in the canvas and the arrangement order of the swimlanes to which the nodes belong on the canvas.

[0103] The adjustment module 302 is used to respond to the adjustment operation of the lane arrangement order, obtain the adjusted lane arrangement order, and store it in the layout data storage module;

[0104] The determination module 303 is used to determine the offset of each swimlane on the canvas based on the adjusted swimlane arrangement order during rendering;

[0105] The rendering module 304 is used to determine the new absolute coordinates of the node in the canvas based on the relative coordinates of the node and the offset of each lane, and to perform rendering updates based on the new absolute coordinates.

[0106] The embodiments of the process modeling data processing system for human-computer collaboration are basically the same as the embodiments of the process modeling data processing method for human-computer collaboration described above, and can be referred to the above embodiments.

[0107] Figure 4 The diagram shows a structural schematic of an embodiment of the computer device of the present invention. The specific embodiments of the present invention do not limit the specific implementation of the computer device.

[0108] like Figure 4 As shown, the computer device may include: a processor 402, a communications interface 404, a memory 406, and a communications bus 408.

[0109] The processor 402, communication interface 404, and memory 406 communicate with each other via communication bus 408. Communication interface 404 is used to communicate with other computer devices, such as clients or other server network elements. The processor 402 executes program 410, specifically performing the relevant steps described above in the computer device embodiment.

[0110] Specifically, program 410 may include program code, which includes computer-executable instructions.

[0111] Processor 402 may be a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to implement embodiments of the present invention. The computer device includes one or more processors, which may be processors of the same type, such as one or more CPUs; or processors of different types, such as one or more CPUs and one or more ASICs.

[0112] Memory 406 is used to store program 410. Memory 406 may include high-speed RAM memory, and may also include non-volatile memory, such as at least one disk storage device.

[0113] Specifically, program 410 can be called by processor 402 to cause the computer device to perform the following operations:

[0114] A dual-storage architecture for process modeling is established, comprising a business data storage module for entity identification association and a layout data storage module. The business data storage module stores the entity data of the process model, and the layout data storage module stores the relative coordinates of each node of the process model in the swimlane relative coordinate system and the arrangement order of the swimlanes on the canvas. The swimlane relative coordinate system is a local coordinate system with the upper left corner of each swimlane as the origin. The relative coordinates of the nodes are obtained based on the absolute coordinates of the nodes in the canvas and the arrangement order of the swimlanes to which the nodes belong on the canvas.

[0115] In response to the adjustment operation of the lane arrangement order, the adjusted lane arrangement order is obtained and stored in the layout data storage module;

[0116] During rendering, the offset of each swimlane on the canvas is determined based on the adjusted swimlane arrangement order;

[0117] The new absolute coordinates of the node in the canvas are determined based on the relative coordinates of the node and the offset of each lane, and the rendering is updated based on the new absolute coordinates.

[0118] In one alternative approach, determining the offset of each swimlane on the canvas during rendering, based on the adjusted swimlane arrangement order, includes:

[0119] During rendering, the offset of each swimlane on the canvas is determined based on the adjusted swimlane arrangement order, the top margin between the top edge of the canvas and the swimlane closest to the top edge of the canvas, the height of the swimlane, and the distance between two adjacent swimlanes.

[0120] In one alternative approach, the entity data includes multiple types of execution roles, and the method further includes:

[0121] During process modeling, in response to the file loading operation of the process model, the arrangement order of the swimlanes on the canvas is obtained from the layout data storage module. Based on the arrangement order of the swimlanes on the canvas and the absolute coordinates of each node on the canvas, the relative coordinates of each node in the swimlane relative coordinate system are determined and stored in the layout data storage module.

[0122] In response to the rendering operation of the process model, the relative coordinates of each node are obtained from the layout data storage module. Based on the relative coordinates of each node and the arrangement order of the swimlanes on the canvas, the absolute coordinates of each node on the canvas are determined. Multiple types of execution roles are obtained from the business data storage module. Based on the absolute coordinates of each node on the canvas and the multiple types of execution roles, visually differentiated swimlanes are used for rendering, with each swimlane corresponding to one type of execution role.

[0123] In one alternative approach, after rendering with visually differentiated swimlanes, the method further includes:

[0124] Detect whether each node has absolute coordinates in the canvas;

[0125] If so, perform grid alignment to snap the position of each node in the canvas to the grid point in the canvas that is closest to the absolute coordinates;

[0126] If not, a hierarchical layout algorithm is used to perform a complete rearrangement to calculate and arrange the positions of each node globally.

[0127] In one optional approach, the node includes a task node, an event node, and a gateway node. The task node determines the swimlane affiliation through its associated execution role. The event node and the gateway node determine the swimlane affiliation through a four-level priority mechanism. After determination, the swimlane affiliation labels of the event node and the gateway node are stored in the layout data storage module.

[0128] In an alternative approach, the method further includes:

[0129] In response to a drag operation on the canvas involving the event node or the gateway node, when the event node or the gateway node is dragged to a new swimlane, the swimlane ownership label of the event node or the gateway node in the layout data storage module is updated to the swimlane ownership label corresponding to the new swimlane.

[0130] In an alternative approach, the method further includes:

[0131] If a task node is associated with a multidimensional evaluation score, then based on the multidimensional evaluation score, the corresponding automation readiness level logo is rendered on the task node in real time. The level logo includes four levels: fully automated, assisted automated, human-dominated, and purely human, with each level represented by a different style.

[0132] This invention provides a computer-readable storage medium storing at least one executable instruction that, when executed on a computer device, causes the computer device to perform any of the above-described method embodiments.

[0133] This invention provides a computer program that can be invoked by a processor to cause a computer device to execute any of the above-described method embodiments.

[0134] This invention provides a computer program product, which includes a computer program stored on a computer-readable storage medium. The computer program includes program instructions that, when executed on a computer, cause the computer to perform any of the above-described method embodiments.

[0135] The algorithms or displays provided herein are not inherently related to any particular computer, virtual system, or other device. Various general-purpose systems can also be used in conjunction with the teachings herein. The required structure for constructing such systems is apparent from the above description. Furthermore, the embodiments of the present invention are not directed to any particular programming language. It should be understood that the content of the invention described herein can be implemented using various programming languages, and the above description of specific languages ​​is for the purpose of disclosing the best mode of implementation of the invention.

[0136] Numerous specific details are set forth in the specification provided herein. However, it will be understood that embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures, and techniques have not been shown in detail so as not to obscure the understanding of this specification.

[0137] Similarly, it should be understood that, in order to streamline the invention and aid in understanding one or more of the various aspects of the invention, features of the embodiments of the invention are sometimes grouped together in a single embodiment, figure, or description thereof in the above description of exemplary embodiments of the invention. However, this disclosure should not be construed as reflecting an intention that the claimed invention requires more features than are expressly recited in each claim.

[0138] Those skilled in the art will understand that modules in the computer device of the embodiments can be adaptively modified and placed in one or more computer devices different from that embodiment. Modules, units, or components in the embodiments can be combined into a single module, unit, or component, and can be divided into multiple sub-modules, sub-units, or sub-components. Except where at least some of such features and / or processes or units are mutually exclusive, any combination can be used to combine all features disclosed in this specification (including the accompanying claims, abstract, and drawings) and all processes or units of any method or computer device so disclosed. Unless expressly stated otherwise, each feature disclosed in this specification (including the accompanying claims, abstract, and drawings) may be replaced by an alternative feature that serves the same, equivalent, or similar purpose.

[0139] It should be noted that the above embodiments are illustrative of the invention and not restrictive, and that those skilled in the art can devise alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses should not be construed as limiting the claims. The word "comprising" does not exclude the presence of elements or steps not listed in the claims. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The invention can be implemented by means of hardware comprising several different elements and by means of a suitably programmed computer. In the unit claims enumerating several means, several of these means may be embodied by the same item of hardware. The use of the words first, second, and third, etc., does not indicate any order. These words can be interpreted as names. The steps in the above embodiments, unless otherwise specified, should not be construed as limiting the order of execution.

Claims

1. A process modeling data processing method for human-computer collaboration, characterized in that, The method includes: A dual-storage architecture for process modeling is established, comprising a business data storage module for entity identification association and a layout data storage module. The business data storage module stores entity data of the process model, including various types of execution roles. The layout data storage module stores the relative coordinates of each node in the process model in the swimlane relative coordinate system and the arrangement order of the swimlanes on the canvas. The swimlane relative coordinate system is a local coordinate system with the upper left corner of each swimlane as the origin. The relative coordinates of the nodes are obtained based on the absolute coordinates of the nodes on the canvas and the arrangement order of the swimlanes to which the nodes belong on the canvas. During process modeling, in response to the file loading operation of the process model, the arrangement order of the swimlanes on the canvas is obtained. Based on the arrangement order of the swimlanes on the canvas and the absolute coordinates of each node on the canvas, the relative coordinates of each node in the swimlane relative coordinate system are determined and stored in the layout data storage module. In response to the rendering operation of the process model, the relative coordinates of each node are obtained from the layout data storage module. Based on the relative coordinates of each node and the arrangement order of the swimlanes on the canvas, the absolute coordinates of each node on the canvas are determined. Multiple types of execution roles are obtained from the business data storage module. Based on the absolute coordinates of each node on the canvas and the multiple types of execution roles, visually differentiated swimlanes are used for rendering, with each swimlane corresponding to one type of execution role. In response to the adjustment operation of the lane arrangement order, the adjusted lane arrangement order is obtained and stored in the layout data storage module; During rendering, based on the adjusted swimlane arrangement order, the offset of each swimlane on the canvas is determined: based on the adjusted swimlane arrangement order, the top distance between the top edge of the canvas and the swimlane closest to the top edge of the canvas, the height of the swimlane, and the distance between two adjacent swimlanes, the offset of each swimlane on the canvas is determined. The new absolute coordinates of the node in the canvas are determined based on the relative coordinates of the node and the offset of each lane, and the rendering is updated based on the new absolute coordinates.

2. The method according to claim 1, characterized in that, After rendering using visually differentiated swimlanes, the process also includes: Detect whether each node has absolute coordinates in the canvas; If so, perform grid alignment to snap the position of each node in the canvas to the grid point in the canvas that is closest to the absolute coordinates; If not, a hierarchical layout algorithm is used to perform a complete rearrangement to calculate and arrange the positions of each node globally.

3. The method according to claim 2, characterized in that, A complete rearrangement is performed using a hierarchical layout algorithm to calculate and arrange the global positions of each node, including: Based on the topology of the process and combined with the preset layout parameters, the positions of all nodes are initially calculated uniformly. The node parameters are set according to preset rules, including node direction, node spacing, spacing between nodes in adjacent lanes, and alignment. The final position of the node is calculated and converted into relative coordinates, which are then stored in the layout data storage module to perform global position calculation and arrangement of each node.

4. The method according to claim 2, characterized in that, The method further includes: After a new node is created on the canvas, the relative coordinates of the new node in the swimlane relative coordinate system are added and stored in the layout data storage module.

5. The method according to claim 1, characterized in that, The nodes include task nodes, event nodes, and gateway nodes. The task nodes determine the swimlane affiliation through their associated execution roles. The event nodes and gateway nodes determine the swimlane affiliation through a four-level priority mechanism. After determination, the swimlane affiliation labels of the event nodes and gateway nodes are stored in the layout data storage module.

6. The method according to claim 5, characterized in that, The method further includes: In response to a drag operation on the canvas involving the event node or the gateway node, when the event node or the gateway node is dragged to a new swimlane, the swimlane ownership label of the event node or the gateway node in the layout data storage module is updated to the swimlane ownership label corresponding to the new swimlane.

7. The method according to claim 5, characterized in that, The method further includes: If a task node is associated with a multidimensional evaluation score, then based on the multidimensional evaluation score, the corresponding automation readiness level logo is rendered on the task node in real time. The level logo includes four levels: fully automated, assisted automated, human-dominated, and purely human, with each level represented by a different style.

8. A process modeling data processing system for human-computer collaboration, characterized in that, The system includes: A module is established to create a dual-storage architecture for process modeling. The dual-storage architecture includes a business data storage module for entity identification association and a layout data storage module. The business data storage module stores entity data of the process model, which includes various types of execution roles. The layout data storage module stores the relative coordinates of each node in the process model in the swimlane relative coordinate system and the arrangement order of the swimlanes on the canvas. The swimlane relative coordinate system is a local coordinate system with the upper left corner of each swimlane as the origin. The relative coordinates of the nodes are obtained based on the absolute coordinates of the nodes on the canvas and the arrangement order of the swimlanes to which the nodes belong on the canvas. The loading module is used to, in response to the file loading operation of the process model during process modeling, obtain the arrangement order of the swimlanes on the canvas, determine the relative coordinates of each node in the swimlane relative coordinate system according to the arrangement order of the swimlanes on the canvas and the absolute coordinates of each node in the canvas, and store them in the layout data storage module. The first rendering module, in response to the rendering operation of the process model, obtains the relative coordinates of each node from the layout data storage module, determines the absolute coordinates of each node in the canvas based on the relative coordinates of each node and the arrangement order of the swimlanes on the canvas, obtains multiple types of execution roles from the business data storage module, and renders using visually differentiated swimlanes based on the absolute coordinates of each node in the canvas and the multiple types of execution roles, with each swimlane corresponding to one type of execution role; An adjustment module is used to respond to the adjustment operation of the lane arrangement order, obtain the adjusted lane arrangement order, and store it in the layout data storage module; The determination module is used to determine the offset of each swimlane on the canvas during rendering based on the adjusted swimlane arrangement order: the offset of each swimlane on the canvas is determined based on the adjusted swimlane arrangement order, the top distance between the top edge of the canvas and the swimlane closest to the top edge of the canvas, the height of the swimlane, and the distance between two adjacent swimlanes. The second rendering module is used to determine the new absolute coordinates of the node in the canvas based on the relative coordinates of the node and the offset of each lane, and to perform rendering updates based on the new absolute coordinates.

9. A computer device, characterized in that, include: The processor, memory, communication interface, and communication bus are provided, wherein the processor, memory, and communication interface communicate with each other via the communication bus. The memory is used to store at least one executable instruction that causes the processor to perform the method as described in any one of claims 1-7.

10. A computer-readable storage medium, characterized in that, The storage medium stores at least one executable instruction, which, when executed on a computer device, causes the computer device to perform the method as described in any one of claims 1-7.

Citation Information

Patent Citations

  • Business data processing method and system based on visual lane modeling

    CN121052142A

  • Contextual workflow modeling

    US20050043982A1