Dynamic process engine method and system based on low code, product and medium

By marking and matching process template difference nodes in the low-code platform, analyzing data dependencies and calculating priorities, the problem of inefficient user decision-making between multiple similar templates is solved, and the process creation efficiency and logical integrity are improved.

CN120704673APending Publication Date: 2025-09-26BEIJING ANDAVILLE INFORMATION TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510965232.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-07-14
Publication Date
2025-09-26

AI Technical Summary

Technical Problem

In a low-code platform, when faced with multiple similar process templates with different internal process nodes, users need to compare the template differences one by one, resulting in inefficient decision-making and inefficient process creation.

Method used

By comparing multiple process templates, marking the difference nodes and matching them with real-time business data, generating associated difference nodes, distinguishing and marking them on the visual interface, analyzing data dependencies, calculating dynamic priority scores, and recommending the optimal template.

Benefits of technology

It optimizes the user's decision-making process between similar templates, improves the efficiency of process creation, avoids process configuration errors, and ensures logical integrity and operational consistency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120704673A_ABST
    Figure CN120704673A_ABST
Patent Text Reader

Abstract

The invention discloses a low-code-based dynamic process engine method, system, product and medium. The method comprises the following steps: firstly, screening out a plurality of alternative process templates according to real-time service description and post information of a user, and finding out and uniformly marking difference nodes among all templates by a preset first mark through comparison; extracting nouns in the content of each difference node as keywords, and matching the keywords with original business data or synonyms of the user; and after the matching is successful, identifying the difference node as an associated difference node related to the current scene, and applying a second mark different from the former. By implementing the technical scheme provided by the invention, the flow creation efficiency is improved by displaying the difference in each flow template and marking the difference related to the real-time scene.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of information processing technology, and in particular to a low-code-based dynamic process engine method, system, product and medium. Background Art

[0002] Low-code development platforms are experiencing rapid growth as enterprises undergo digital transformation. Dynamic process engines, as core components of low-code platforms, significantly improve the development and management efficiency of business processes through visualization, playing a vital role in daily enterprise operations.

[0003] In related technologies, process creation typically involves users dragging basic nodes like approval, copy, and branch judgment from a component library and connecting them together to form a complete business process. While this drag-and-drop operation is intuitive and convenient, building from scratch can be cumbersome for numerous repetitive and structurally similar business scenarios. Therefore, to reuse best practices and improve efficiency, the introduction of pre-set process templates has become a mainstream technical solution.

[0004] However, in related technologies, when faced with multiple templates that are similar in name or classification but have differences in internal process nodes, users need to compare the differences between the templates one by one and select the template required for the process to be created in real time from multiple templates. In the process of creating complex processes, too many templates and too many differences will lead to inefficient user decision-making, thereby resulting in inefficient process creation. Summary of the Invention

[0005] The present application provides a low-code-based dynamic process engine method, system, product and medium for improving the efficiency of process creation by displaying the differences in each process template and marking the differences related to the real-time scenario.

[0006] In a first aspect of the present application, a low-code-based dynamic process engine method is provided, the method comprising: After receiving a request to create a real-time process including real-time business data and user attribute data, multiple preset process templates are obtained as options based on the real-time business data; nodes of the multiple process templates are compared to generate a difference node set containing difference nodes between all process templates, and a preset first mark is given to all difference nodes in a visual interface; nouns in the content of each difference node are extracted to obtain node keywords; difference nodes containing node keywords or synonyms of node keywords in the real-time business data or user attribute data are marked as associated difference nodes; and a preset second mark different from the preset first mark is applied to the associated difference nodes in the visual interface.

[0007] In the above embodiment, by comparing multiple alternative process templates and marking the difference nodes in all process templates with a first mark, and then further extracting the keywords of these difference nodes for matching with the user's real-time business data, the successfully matched nodes are identified as associated difference nodes and a second mark is applied, thereby optimizing the shortcomings of related technologies in which users need to review between many similar templates and the decision-making efficiency is low due to information overload, and transforming the comparison work into a clear-focus confirmation process, helping users to quickly determine the appropriate process configuration even in complex scenarios, thereby improving the efficiency of process creation.

[0008] In conjunction with some embodiments of the first aspect, in some embodiments, after applying a preset second mark different from the preset first mark to the associated difference node in the visual interface, the method further includes: Analyze the data input items and data output items of each associated difference node; in two or more different associated difference nodes, when the data input items of one associated difference node are the same as the data output items of another associated difference node, mark the different associated difference nodes as dependent node groups; in the visual interface, apply a preset third mark to multiple associated difference nodes belonging to the same dependent node group.

[0009] In the above embodiment, by analyzing the data input and output items of each associated difference node, nodes with data dependency relationships (i.e., the output of one node is the input of another node) are identified and classified into dependent node groups, and a unified third mark is applied to all nodes in the same group, so that the data flow relationship between nodes that is inherent but originally invisible to the user can be intuitively presented on the interface; multiple associated difference nodes that were originally visually isolated are converted into logically interconnected functional clusters; the user's decision-making mode is improved from selecting a single node to selecting a complete functional module, avoiding process configuration errors caused by missing dependencies, and improving process creation efficiency by ensuring the logical integrity of the process.

[0010] In conjunction with some embodiments of the first aspect, in some embodiments, after marking different associated difference nodes as dependent node groups, the method further includes: When a selection operation is received on any dependent-associated difference node in a dependent node group in a visual interface, all preceding dependent nodes of the dependent-associated difference node in the dependent node group are traced back and synchronously selected along the dependency relationship rule of the dependent node group; and prompt information for explaining the synchronous selection operation is generated and displayed.

[0011] In the above embodiment, when a user selects any dependent node, all necessary predecessor nodes are traced and simultaneously selected, supplemented by explanatory information prompts. This allows the user's single selection operation to be expanded into a logically complete combination of operations. By making implicit dependency rules in process configuration explicit and automating their execution, users avoid missing key steps due to unfamiliarity with business details and simplify the previously error-prone manual combination process into a single-click construction step. By ensuring operational consistency, the user's decision-making and operation path is shortened, thereby improving the efficiency of process creation.

[0012] In conjunction with some embodiments of the first aspect, in some embodiments, applying a preset second mark different from the preset first mark to the associated difference node in the visual interface specifically includes: Parse each node keyword and extract text-type keywords; extract the text parameter name in the text-type keyword, locate the corresponding sub-mapping table in the preset text weight mapping table, query and obtain the corresponding text corresponding to the text parameter name in the real-time business data, and find the quantitative weight of the corresponding text in the sub-mapping table as the dynamic impact factor; calculate the preset basic weight value and dynamic impact factor corresponding to each associated difference node through a preset function model to generate a dynamic priority score corresponding to each associated difference node; in the visual interface, apply a preset second mark to the associated difference node, and according to the dynamic priority score, render the preset second mark as a gradient style with a visual intensity positively correlated with the value.

[0013] In the above embodiment, by parsing the user's real-time business data, a dynamic priority score is calculated for each associated difference node, and the relevance of different nodes to the current scenario is quantified and distinguished. Specifically, the key text parameters in the user data are extracted, and the preset weight table is queried to convert it into a dynamic influencing factor, and then the final score is generated in combination with the basic weight of the node, which determines the visual intensity of the recommended mark (second mark) on the interface. For example, a high score will be rendered in a more eye-catching highlight style. The original flat display of all related items is upgraded to a three-dimensional guide with a primary and secondary distinction. Users can give priority to the most visually prominent options, thereby focusing their attention on the most critical decision points, accelerating the process creation process and improving the efficiency of process creation.

[0014] In conjunction with some embodiments of the first aspect, in some embodiments, after calculating the preset basic weight value corresponding to each associated difference node and the dynamic impact factor through a preset function model to generate a dynamic priority score corresponding to each associated difference node, the method further includes: Multiple historical process instances marked as failed are obtained from the enterprise's historical process database, and statistical analysis is performed on the node combinations to identify and extract high-frequency co-occurring node combinations. When the associated difference node set of the associated difference node successfully matches the high-frequency co-occurring node combination, the historical association strength of the corresponding high-frequency co-occurring node combination is used as the dynamic risk coefficient. The dynamic risk coefficient is used to weight the dynamic priority score, and the visual intensity is adjusted according to the weighted dynamic priority score.

[0015] In the above example, historical failed processes are first analyzed to identify high-risk node combinations that frequently occur together and lead to failure. Then, when a high-risk combination is included in the associated difference nodes, a dynamic risk factor is generated using the historical failure records, and this factor is used to lower the original recommendation priority score for that combination. As a result, a node combination that originally had a high degree of business data matching will have its recommendation mark on the interface significantly dimmed due to potential risks. This proactive early warning prevents the creation of invalid or inefficient processes, thereby improving the success rate and efficiency of process creation.

[0016] In conjunction with some embodiments of the first aspect, in some embodiments, after calculating the preset basic weight value corresponding to each associated difference node and the dynamic impact factor through a preset function model to generate a dynamic priority score corresponding to each associated difference node, the method further includes: The dynamic priority scores of all associated difference nodes contained in each process template are accumulated to obtain the template matching score of each process template; the process template with the highest template matching score is marked as the best recommended template; in the visual interface, a preset recommendation mark is applied to the best recommended template.

[0017] In the above embodiment, the dynamic priority scores calculated for each associated difference node are accumulated across the template dimension to generate an overall template match score for each process template. Based on this score, the optimal template is highlighted for recommendation. When faced with multiple candidate templates that all contain several highlighted recommendation nodes, the template with the highest score is directly marked as the optimal recommendation based on the quantified total score. This allows users to start from the blueprint that best matches the current business scenario among multiple similar options, simplifying their initial selection and improving the efficiency of process creation.

[0018] In conjunction with some embodiments of the first aspect, in some embodiments, after applying a preset second mark different from the preset first mark to the associated difference node in the visual interface, the method further includes: After receiving the final process created by the user, the final process is compared with the process template to identify the newly added process fragments; the newly added process fragments are counted; when the number of the first newly added process fragments exceeds the preset new process number threshold, a template optimization suggestion containing the first newly added process fragment is generated.

[0019] In the above embodiment, by establishing a closed-loop feedback and self-learning mechanism from the user's actual operation to the template library, the process template can continuously self-optimize and iterate. After the user completes the process creation, it will compare and identify the new process fragments that are added frequently but not included in the original template. Once the cumulative number of times the operation exceeds the preset threshold, a template optimization suggestion will be generated. The differences that the current user repeatedly manually makes up for are converted into the standard configuration of future templates, so that subsequent users can start directly from a pre-configured starting point that is closer to their actual needs when handling similar businesses. The workload of users who need to discover and add relevant difference nodes on their own is reduced, and the continuous improvement of process creation efficiency is achieved by improving the scenario adaptability of the template itself.

[0020] In a second aspect, an embodiment of the present application provides a dynamic process engine system, which includes: one or more processors and a memory; the memory is coupled to the one or more processors, and the memory is used to store computer program code, the computer program code includes computer instructions, and the one or more processors call the computer instructions to enable the dynamic process engine system to execute the method described in the first aspect and any possible implementation of the first aspect.

[0021] In a third aspect, an embodiment of the present application provides a computer program product comprising instructions. When the above-mentioned computer program product runs on a dynamic process engine system, the above-mentioned dynamic process engine system executes the method described in the first aspect and any possible implementation method of the first aspect.

[0022] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium comprising instructions. When the instructions are executed on a dynamic process engine system, the dynamic process engine system executes the method described in the first aspect and any possible implementation of the first aspect.

[0023] It is understandable that the dynamic process engine system provided in the second aspect, the computer program product provided in the third aspect, and the computer storage medium provided in the fourth aspect are all used to execute the low-code-based dynamic process engine method provided in the embodiments of this application. Therefore, the beneficial effects that can be achieved can be referred to the beneficial effects of the corresponding methods and will not be repeated here.

[0024] One or more technical solutions provided in the embodiments of this application have at least the following technical effects or advantages: 1. This application compares multiple alternative process templates and marks the difference nodes in all process templates with a first mark, and then further extracts the keywords of these difference nodes for matching with the user's real-time business data, identifies the successfully matched nodes as associated difference nodes and applies a second mark, thereby optimizing the shortcomings of related technologies in which users need to review among many similar templates and make inefficient decisions due to information overload, and transforms the comparison work into a focused confirmation process, helping users to quickly determine the appropriate process configuration even in complex scenarios, thereby improving the efficiency of process creation.

[0025] 2. This application analyzes the data input and output items of each associated difference node, identifies and classifies nodes with data dependencies (i.e., the output of one node is the input of another node) into dependent node groups, and applies a unified third tag to all nodes in the same group, so that the inherent data flow relationship between nodes, which was originally invisible to the user, can be intuitively presented on the interface. Multiple associated difference nodes that were originally visually isolated are transformed into logically interconnected functional clusters. The user's decision-making mode is upgraded from selecting a single node to selecting a complete functional module, avoiding process configuration errors caused by missing dependencies, and significantly improving creation efficiency by ensuring the logical integrity of the process.

[0026] 3. This application traces back and synchronously selects all necessary predecessor nodes when the user selects any dependent node, supplemented by explanatory information prompts, so that the user's single selection operation is expanded into an operation combination that ensures logical integrity. By making the implicit dependency rules in the process configuration explicit and automatically executing them, users are prevented from missing key steps due to unfamiliarity with business details, and the manual combination process that may be prone to errors is simplified to a construction step that can be completed with a single click. By ensuring the consistency of operations, the user's decision-making and operation path is shortened, thereby improving the efficiency of process creation. BRIEF DESCRIPTION OF THE DRAWINGS

[0027] Figure 1 This is a flowchart of a low-code-based dynamic process engine method in an embodiment of the present application; Figure 2 This is another flowchart of the low-code-based dynamic process engine method in an embodiment of the present application; Figure 3 This is an exemplary hardware structure diagram of the dynamic process engine system in an embodiment of the present application. DETAILED DESCRIPTION

[0028] The terms used in the following examples of the present application are for the purpose of describing specific embodiments only and are not intended to limit the present application. As used in the specification and appended claims of the present application, the singular expressions "a," "an," "said," "above," "the," and "this" are intended to include plural expressions as well, unless the context clearly indicates otherwise. It should also be understood that the term "and / or" used in the present application refers to and encompasses any or all possible combinations of one or more of the listed items.

[0029] In the following, the terms "first" and "second" are used for descriptive purposes only and should not be understood to imply or suggest relative importance or implicitly indicate the number of the technical features indicated. Therefore, the features defined as "first" and "second" may explicitly or implicitly include one or more of the features. In the description of the embodiments of this application, unless otherwise specified, "plurality" means two or more.

[0030] In related technologies, process creation often relies on preset process templates to improve efficiency and avoid users having to build from scratch. However, in actual applications, when the system recommends multiple seemingly related templates (such as "travel reimbursement," "daily reimbursement," and "entertainment expense reimbursement") based on preliminary business data (such as "reimbursement"), users are forced to review the internal nodes and process structure of each template one by one to determine which template best fits the current specific business scenario. This process, which relies on manual comparison and decision-making, significantly reduces user decision-making efficiency when there are many templates or a complex process structure, thereby slowing down the creation of the entire process.

[0031] In an embodiment of the present application, all candidate templates are compared at the node level, and the differences between all templates (difference nodes) are uniformly preliminarily marked. Keywords of these difference nodes are further extracted and semantically matched with the real-time business data input by the user to describe the specific scenario and the user's job attribute data. A more eye-catching second mark will be added to the successfully matched nodes (associated difference nodes). After the above steps, the user no longer needs to review, which changes the user's decision-making mode and transforms it into a quick confirmation by following the map, thereby improving the efficiency of process creation.

[0032] Figure 1 This is a flowchart of a low-code-based dynamic process engine method in an embodiment of the present application, including the following steps: S101 . After receiving a request for creating a real-time process including real-time business data and user attribute data, multiple preset process templates are obtained as options according to the real-time business data.

[0033] Specifically, when a user enters a request to create a process in the system interface, the system first captures the raw text input as real-time business data. This is the descriptive, raw information the user enters to achieve their business goals. This information is typically unstructured, such as natural language text. Through subsequent feature extraction and association analysis, it is converted into structured demand data that can be understood by the machine. Simultaneously, the system captures user identity information and information pre-configured in the system that is statically associated with the user's identity (such as position, department, and rank) as user attribute data.

[0034] The natural language processing engine is launched to parse real-time business data. Through technologies such as word segmentation and part-of-speech tagging, the core nouns, verbs, and key entities in the text are identified. The NER model is used to identify and label entities with specific business meanings, such as identifying "5,000 yuan" as an amount and "marketing department" as a department. By analyzing sentence patterns and core verbs, the user's core business intent is determined. For example, "applying for...expenses" is identified as a reimbursement intent and "drafting...contract" is identified as a contract approval intent.

[0035] After the above processing, the originally unstructured user input is converted into structured key-value pair data.

[0036] After obtaining structured demand data, we perform association analysis to match the structured key-value pairs with a pre-defined library of process templates. Each process template is pre-labeled with a set of tags describing its applicable scenarios. The key-value pairs in the structured demand data are then compared with the template's tag set. Furthermore, a synonym dictionary can be configured, for example, linking "entertainment expenses" to the higher-level "administrative expenses" tag, enabling more intelligent fuzzy matching.

[0037] For complex scenarios, the user's structured requirement data and each template's label set are converted into high-dimensional semantic vectors. By calculating the cosine similarity between the user's requirement vector and each template vector, the degree of match between each template and the user's intent is quantitatively assessed. Subsequently, all templates with similarity scores exceeding a preset threshold are screened to form the final candidate set.

[0038] Ultimately, through the above process, the template library containing numerous templates will be converged into a small number of alternative process templates related to the user's current task.

[0039] S102 : Compare nodes of multiple process templates to generate a difference node set including difference nodes between all process templates, and preset a first mark for all difference nodes in a visual interface.

[0040] Specifically, each process template is abstracted into an ordered set or graph structure consisting of multiple node elements. Each node, as the basic unit of the process, contains the node's unique identifier, name, and node content.

[0041] The comparison process first needs to determine the nodes that are common to all alternative templates. This can be achieved by calculating the intersection of the node sets contained in all templates, which constitutes the core backbone of the process.

[0042] Secondly, all non-repeated nodes that appear in all alternative templates are determined to constitute the full set of process functions. This is achieved by calculating the union of the node sets contained in all templates.

[0043] Ultimately, the difference node set is created by excluding the core nodes from the complete set of functions. Logically, this is equivalent to performing a set difference operation. The resulting set includes all nodes that appear in only some of the candidate templates, but not all of them. These nodes are the source of functional and logical differences between templates.

[0044] The depth and granularity of the comparison can be graded based on the complexity of the business. Determining whether a node is the same is based solely on its unique identifier. This is primarily used to identify structural changes in the process, specifically which nodes exist in one template but are missing from another. For nodes that exist in multiple templates and have the same unique identifier, further in-depth comparisons are conducted to compare the node contents. If two nodes are detected with the same identifier but different content, these two nodes are also considered to be different nodes.

[0045] After obtaining the set of difference nodes, the visual marking phase begins. The purpose of marking is to establish a visual benchmark and apply a unified, preset visual markup to all identified difference nodes in the user interface. This can be done by changing the node's border style, fill color, or adding a specific icon.

[0046] By applying a preset first marker, the flowchart is visually divided into a fixed area that maintains the default style (i.e., nodes common to all templates) and uniquely labeled nodes. This allows users to immediately understand which are the fundamental, unchanging parts of the process and which are the differentiated functional points that require trade-offs and selection based on the specific business needs.

[0047] S103: Extract nouns from the content of each difference node to obtain node keywords.

[0048] Specifically, the content of the difference node is first obtained. In order to improve the accuracy of subsequent processing, some preprocessing operations may be performed, such as removing special characters in the text and converting all characters to a uniform case.

[0049] The word segmentation module is called to segment the preprocessed text. The word segmentation algorithm breaks down a continuous string into individual, meaningful words. For languages ​​without distinct delimiters, such as Chinese, complex word segmentation algorithms based on dictionary matching or statistical models are often used.

[0050] After obtaining the word segmentation results, each word is tagged with a part-of-speech tag. The part-of-speech tagging module assigns each word a predefined part-of-speech category, such as noun, verb, adjective, etc.

[0051] Finally, traverse the annotation results, filter out all words whose part of speech is marked as noun, and combine them into the keyword set of the node.

[0052] In some embodiments, custom business dictionaries can also be integrated. Building on standard lexical analysis, enterprises can pre-enter proper nouns specific to their business domain (such as specific project codes, product names, and internal department abbreviations) into the custom dictionary. This dictionary is prioritized during word segmentation and part-of-speech tagging, ensuring that nouns with special business meanings are accurately identified and extracted, avoiding incorrect segmentation or tagging by standard algorithms.

[0053] S104: Mark the difference nodes containing the node keyword or the synonyms of the node keyword in the real-time business data or user attribute data as associated difference nodes.

[0054] Specifically, the node keywords owned by each difference node are traversed, and the node keywords are used to search in the real-time business data and user attribute data obtained and structured in S101. This search and matching process can be implemented using technologies of different depths and complexities: directly check whether the node keyword exists in the text value of the real-time business data or user attribute data. This method is fast to execute and is suitable for scenarios where the keywords and business data are highly consistent in terms; in order to overcome the matching failure problem caused by different terms, a preset synonym database is introduced, which stores a large number of synonyms or near-synonymous mapping relationships in the business field. When matching, not only the node keyword itself will be searched, but also all its corresponding synonyms in the database will be searched.

[0055] In some embodiments, techniques such as word embedding or pre-trained language models can be used to convert both node keywords and words in business data into high-dimensional semantic vectors. By calculating metrics such as cosine similarity between the two vectors, their semantic proximity can be quantitatively determined. Even if two words are not strictly synonymous, if they are highly related in the business context, their semantic similarity score will be high. When the score exceeds a preset threshold, the match is considered successful.

[0056] For any difference node, as long as at least one node keyword (or its synonyms or semantically related words) is successfully matched, the difference node will be identified as an associated difference node.

[0057] S105 . In the visual interface, a preset second mark different from the preset first mark is applied to the associated difference node.

[0058] Specifically, after receiving the set of associated difference node identifiers transmitted by the backend, the rendering engine traverses all process node objects displayed in the current visualization interface. For each node pair, it determines whether the node's identifier exists in the received set of associated difference nodes. If the determination is yes, a preset second tag, which is significantly different from the preset first tag and indicates the associated state, is applied or added to the node object.

[0059] The function of the preset first mark is universal notification, and its visual effect should be unified and relatively convergent, aiming to establish a baseline for observation.

[0060] The function of the preset second mark is personalized guidance, and its visual effect must have a higher visual weight, such as by using more eye-catching colors, stronger motion effects or more prominent icons, in order to capture the user's attention at the first time and form a visual focus.

[0061] Through this dual-marking system, a clear information hierarchy is constructed on the interface: common nodes (unmarked) constitute the basis, difference nodes (first mark) constitute the variable range, and related difference nodes (second mark) are the content that users need to pay attention to first.

[0062] In some embodiments, after completing the preliminary marking of associated difference nodes, a multi-dimensional quantitative scoring mechanism based on business data and historical risks can be further introduced to achieve priority sorting of associated difference nodes, recommendation of process templates, and dynamic rendering of visual markers, thereby providing users with more intelligent decision support.

[0063] First, semantic analysis is performed on the node keywords extracted in S103 to identify text-based keywords with parameterized features. Text-based keywords refer to keywords that contain variable parameters in their expressions. Their meaning is not only a static concept, but also refers to a variable that needs to be filled with specific business data. For example, the contract amount is a text-based keyword, but legal affairs is not. Identification is performed through preset rules or models, for example, by matching a vocabulary containing parameterized roots such as "amount", "level", "type", and "region", or by identifying phrases with "noun + attribute" structural features through syntactic analysis.

[0064] After identifying the textual keywords, textual parameter names are extracted from them. Textual parameter names are standardized names abstracted from the textual keywords and can be used as keys in databases or data structures. This process is typically accomplished by consulting a predefined mapping dictionary or applying a normalization algorithm to ensure that different expressions are mapped to unique parameter names.

[0065] After obtaining the text parameter name, use the extracted text parameter name to query in the real-time business data to obtain its corresponding specific text value. Then, using the text value as the key, search and obtain its quantitative weight in the previously located sub-mapping table. The final value obtained is the dynamic impact factor. The text weight mapping table is a pre-configured, hierarchical data structure with the text parameter name as the key and the value pointing to a dedicated sub-mapping table. The sub-mapping table is a collection of key-value pairs, where the key is the specific business text that may appear in the text parameter, and the value is a preset quantitative weight. The dynamic impact factor is a numerical value that quantitatively reflects the degree of influence of specific content in the current business data on the importance of a process node. Its dynamicity is reflected in the fact that its value depends on the business data input by the user in real time.

[0066] After obtaining the dynamic impact factor, the dynamic priority score for each associated difference node is calculated. The dynamic priority score is composed of two parts through a preset function model (such as weighted sum): one part is the preset basic weight value for each node, representing its inherent importance; the other part is the dynamic impact factor calculated in the previous step, which reflects the special importance in the current business scenario.

[0067] To introduce a risk control dimension, we performed a risk assessment based on historical data. We accessed a database storing a large number of historical process instances, particularly those marked as failures. By applying data mining algorithms such as association rule mining, we statistically analyzed the node combinations in these failure cases, identifying and extracting frequent co-occurring node combinations with high correlation.

[0068] When it is detected that the current user's associated difference node set completely contains one or more high-frequency co-occurrence node combinations, the historical association strength (such as support or confidence) of the combination counted in the historical database is used as the dynamic risk coefficient, and the dynamic priority score of the nodes in the combination is negatively weighted or punitively adjusted.

[0069] After calculating the final dynamic priority score, the default secondary marker for the associated difference nodes is upgraded to a gradient style that is positively correlated with the score. The visual intensity of the node (e.g., background color saturation, border thickness, or an additional priority superscript value) increases as the dynamic priority score increases. This provides users with intuitive visual cues to distinguish the order of importance between associated nodes.

[0070] Each candidate process template is traversed and the final scores of all associated difference nodes within it are accumulated to obtain an overall template matching score, which represents the overall fit between the template and the current user's specific needs and risk aversion considerations. Finally, the process template with the highest score is identified as the best recommended template and is given a unique preset recommendation mark (such as a "recommended" badge or an overall highlighted border).

[0071] In the above technical steps, semantic analysis of difference nodes is performed to quantify the strength of association with real-time business data, and historical failure case analysis is introduced to assess potential risks, so as to calculate a dynamic priority score for each associated node. The activities that originally required users to analyze and judge "which difference point is more important" and "which template is more suitable" are transformed into system-complete, data-driven intelligent recommendations, thereby improving the efficiency of users in creating processes that meet the needs of specific scenarios.

[0072] In the above embodiment, by comparing multiple alternative process templates and marking the difference nodes in all process templates with a first mark, and then further extracting the keywords of these difference nodes for matching with the user's real-time business data, the successfully matched nodes are identified as associated difference nodes and a second mark is applied, thereby optimizing the shortcomings of related technologies in which users need to review between many similar templates and the decision-making efficiency is low due to information overload, and transforming the comparison work into a clear-focus confirmation process, helping users to quickly determine the appropriate process configuration even in complex scenarios, thereby improving the efficiency of process creation.

[0073] In other embodiments of the present application, when there are hidden business dependencies between process nodes, users may omit the selection of necessary predecessor nodes due to unfamiliarity with the specific logic, resulting in logical errors in the final configured process. The low-code-based dynamic process engine method provided by this application can identify and mark dependencies. When the user selects any node in the relationship, all required predecessor nodes are synchronously selected and prompted, thereby ensuring the logical integrity of process creation, avoiding invalid operations and rework by users, and improving the efficiency of process creation.

[0074] like Figure 2 As shown, another flowchart of the low-code-based dynamic process engine method provided in an embodiment of the present application includes the following steps: S201 . After receiving a request for creating a real-time process including real-time business data and user attribute data, obtain multiple preset process templates for selection according to the real-time business data.

[0075] S202 : Compare nodes of multiple process templates to generate a difference node set including difference nodes between all process templates, and preset a first mark for all difference nodes in a visual interface.

[0076] S203: Extract nouns from the content of each difference node to obtain node keywords.

[0077] S204: Mark the difference nodes containing the node keyword or the synonyms of the node keyword in the real-time business data or user attribute data as associated difference nodes.

[0078] S205 . In the visual interface, a preset second mark different from the preset first mark is applied to the associated difference node.

[0079] Steps S201-S205 and Figure 1 In the illustrated embodiment, steps S101 to S105 are similar, and the descriptions of steps S101 to S105 may be referred to, and will not be repeated here.

[0080] S206: Analyze the data input items and data output items of each associated difference node.

[0081] Specifically, all associated difference nodes determined in step S204 are traversed. For each associated difference node, the complete content of the node is located in a process definition library (such as a BPMN 2.0 standard XML file, a process definition table in a database, or a configuration file stored in JSON / YAML format).

[0082] Data input items refer to the collection of data fields that a node must obtain from the outside (such as user forms, previous nodes, or external systems) in order to successfully execute its business logic. Read the part about data input in the node content. Based on the reading of object properties, in an object-oriented system, each node object may have a property called requiredInputs or a similar name, the value of which is an array or list containing the standard names of all input items; based on the parsing of declarative configuration, when adopting standard specifications such as BPMN, each task node will be associated with a clear DataInputAssociation. The analysis process will parse these associations and extract the DataObjectReference or DataStoreReference they reference, thereby obtaining the definition of the input items; based on the discovery of service descriptions, if the node represents a microservice call, the data input items can be dynamically discovered by parsing the API description file of the service (such as the OpenAPI / Swagger specification).

[0083] Data outputs are the collection of data fields generated or updated after a node executes its content logic and available to subsequent nodes. Similar to inputs, read the data output section of the node definition. For example, read the attribute named "outputs" or parse the DataOutputAssociation in BPMN. These outputs also have standardized names.

[0084] Through the above process, a data input item list and a data output item list are generated for each associated difference node.

[0085] S207 . In two or more different associated difference nodes, when a data input item of one associated difference node is the same as a data output item of another associated difference node, mark the different associated difference nodes as dependent node groups.

[0086] Specifically, a global data output item index is first created. The data output item index is a mapping table, where the key is the standardized name of the data item and the value is the identifier of the node that generated the data output item.

[0087] Traverse each associated difference node. For the currently traversed node, also called the target node, obtain all data input items. For each data input item, perform a query on the data output item index.

[0088] If the data input item is successfully found in the data output item index, this means that one or more source nodes exist that can provide the data. At this point, a dependency relationship is confirmed from the source node to the target node, and these two (or more) nodes are collectively labeled and grouped into a dependent node group. A dependent node group is a logical collection of all nodes directly or indirectly connected through the data input / output item. A group can consist of a single pair of dependent nodes or multiple nodes in a complete data processing chain.

[0089] The above process continues until all data input items of all associated difference nodes have been checked. In implementation, if node A depends on node B, and node B depends on node C, A, B, and C are merged into the same dependent node group to reflect this transitive dependency relationship.

[0090] From a data structure perspective, this process actually builds a directed acyclic graph, where nodes represent the associated differences in the process, and directed edges represent the direction of data flow and the order of execution. Dependency node groups correspond to the connected components in this graph.

[0091] S208. When a selection operation of any dependency-associated difference node in the dependency node group is received in the visual interface, all preceding dependency nodes of the dependency-associated difference node in the dependency node group are traced back and synchronously selected along the dependency relationship rule of the dependency node group.

[0092] Specifically, before executing this step, a data model representing all associated difference nodes is maintained in memory. This model contains attributes for each node, one of which is its selected state (e.g., a Boolean value). Simultaneously, a directed acyclic graph reflecting the data dependencies between nodes is constructed according to step S207. To enable efficient reverse tracing, this graph is typically supplemented with a data structure containing a predecessor node index. This structure allows for quick querying of any node's identifier to all parent nodes or predecessor nodes that directly provide data input to the node.

[0093] When a user makes a selection in the visual interface, the front-end interaction layer captures this event. This event doesn't directly trigger a style change in the interface elements. Instead, it is encapsulated into a logical instruction carrying the unique identifier of the selected node and transmitted to the business logic processing layer. Upon receiving the instruction, the logic processing layer initiates a reverse graph traversal algorithm, starting with the selected node. This algorithm aims to identify all parent nodes or predecessor nodes of the initial node.

[0094] Starting from the initial node, use the predecessor node index to find all direct predecessor nodes. Then, use these predecessor nodes as new starting points and repeat this search process recursively or iteratively (for example, using a stack structure) until a root node with no predecessor nodes is reached.

[0095] During the entire traversal, the identifiers of all visited nodes (including the initial node and all its direct and indirect predecessors) are collected into a unique set. Using a set data structure allows for handling complex convergent dependencies, ensuring that each required node is included exactly once.

[0096] After the traversal algorithm completes, a complete set of identifiers for all nodes that must logically be selected is obtained. Finally, a batch operation is performed to traverse each node identifier in this set and change the corresponding selected state attribute in the system's internal data model to true. This step is a background data state change that ensures the logical consistency of node selection.

[0097] S209: Generate and display prompt information for explaining the synchronous selection operation.

[0098] Specifically, the front-end logic layer listens for the "synchronous selection" event, which is triggered after the selected status of all dependent nodes is successfully updated in step S208. The event payload contains key information: the ID of the node initially selected by the user (the trigger source), and a list of the IDs of all predecessor nodes that were synchronously selected.

[0099] After receiving the event, the prompt information generation module extracts human-readable node names (such as "Legal Review" or "Financial Approval") from the node metadata based on the received node ID list. To ensure consistency and professionalism, a pre-set copy template is used, for example: "To ensure the logical integrity of the process, the system has automatically selected the following required predecessor nodes: [node name list]." After the content is generated, the UI component library is called to instantiate a component for information display.

[0100] Depending on the complexity of the information and the interaction needs, different types of UI components can be selected. The most common choices are tooltips or lightweight popovers, as they provide information without interrupting the user's current flow. When the information is critical or requires user confirmation, a non-modal dialog can also be used. This component is dynamically rendered on the interface, and its display position is typically tied to the user's focus (such as the mouse cursor position or near a selected node) to ensure contextual coherence.

[0101] Tooltip components have a defined lifecycle. They appear when triggered and automatically disappear under certain conditions, such as when the mouse moves out of the associated area, when they appear for a certain period of time, or when the user clicks the close button on the component.

[0102] S210 . In a visual interface, a preset third mark is applied to a plurality of associated difference nodes belonging to the same dependent node group.

[0103] Specifically, all dependent node groups determined in step S208 are traversed. In order to visually distinguish different groups, a unique visual identifier needs to be assigned to each independent group.

[0104] A visual style pool is predefined internally (for example, an array of CSS class names containing multiple colors and border styles), and a style class name is assigned to each dependent node group in sequence.

[0105] For scenarios where a large number of groups need to be supported, visual styles can be generated programmatically. For example, an algorithm can generate a unique, visually distinct color for each group (for example, by changing the hue value in fixed steps in the HSL color space) and dynamically create corresponding CSS rules.

[0106] Once a dependent node group has been assigned a visual identifier, iterate through all associated difference nodes within that dependent node group. For each node in the group, update the corresponding record in the front-end data model by adding or modifying a specific attribute. For example, setting the value of an attribute called "Grouping Mark" to "Grouping Style - Blue" converts the logical attribution relationship into concrete data that can be directly read and used by the interface rendering engine.

[0107] The core design principle of the user interface rendering engine is to be able to respond to changes in the data model. When a node's "grouping mark" property is assigned or updated, the rendering engine detects this change and triggers a re-rendering of the corresponding user interface element. During the re-rendering process, the engine adds the value of the "grouping mark" property (i.e., "Group Style - Blue") as a class attribute of the user interface element in Hypertext Markup Language.

[0108] Finally, according to the rules pre-defined in the cascading style sheet - for example, a rule defined for the "group style-blue" class name may specify that its background color is light blue and the border color is sky blue - these corresponding visual styles are accurately applied to all node user interface elements with this class attribute.

[0109] Through the above process, all nodes that logically belong to the same dependent node group are given the same visual appearance in the user interface, that is, a preset third mark is applied. The preset third mark is usually presented in a macro manner, such as a background bounding box or a uniform connection line color. It forms a visual superposition with the node's own secondary mark (such as a highlighted border), providing users with multi-dimensional decision-making information.

[0110] In some embodiments, after completing the visual marking of the dependent node group, the process finally created by the user can be further intelligently analyzed and learned to discover high-frequency new operations, thereby achieving continuous optimization of the process template and improving the scenario fit of the template.

[0111] First, after the user confirms and submits their finalized process, a comparison program is launched to perform a set operation between the submitted process (essentially a set containing all selected nodes) and the original process template on which it is based (i.e., the default set of nodes included in the template). This operation identifies all additional process segments added by the user based on the template. This captures the user's personalized needs in specific scenarios as structured data, laying the foundation for subsequent quantitative analysis.

[0112] Next, we collect statistics for the newly identified process fragments. For each process template, we maintain an associated statistics table to record the number of times each new process fragment has been added. Each time a process is created, this table is updated, incrementing the count for each newly added fragment. By aggregating operation data from a large number of users, we can filter out accidental or erroneous operations by individual users and identify commonly added process fragments.

[0113] Finally, when the cumulative number of a specific newly added process fragment (herein referred to as the "first newly added process fragment") in the statistical table exceeds a pre-set threshold used to determine whether it has become a common demand, the suggestion generation mechanism is triggered, generating a structured template optimization suggestion, clearly indicating which newly added process fragment should be integrated into which original template. Translating the results of data analysis into specific, actionable optimization plans provides template maintainers with data-backed decision-making, ensuring that template updates are not based on subjective assumptions but on real, widespread user behavior patterns.

[0114] The above steps, through statistical analysis of actual user processes, identify common differences between standard templates and real-world business scenarios, driving the evolution of templates to better align with real-world scenarios. A better template reduces the need for users to manually add additional steps later, thereby improving process creation efficiency by pre-incorporating frequently requested process segments.

[0115] In the above embodiment, the dependency group between nodes is identified and constructed by deeply analyzing the data flow relationship between each associated difference node, that is, whether the output of one node is the input of another node. When the user is building a complex process, once the node is found, it can be traced back and all the necessary predecessor nodes can be checked synchronously based on the dependency rules, and prompt information will be given. The implicit rules that were originally hidden deep in the business logic and required user judgment are transformed into operation guidance on the interface. By forcibly ensuring the logical integrity of the process, configuration errors and later rework caused by omitting key steps are avoided, thereby improving the efficiency and accuracy of process creation.

[0116] The following introduces an exemplary dynamic process engine system 300 provided in an embodiment of the present application. Figure 3 This is a schematic diagram of an exemplary hardware structure of the dynamic process engine system 300 provided in an embodiment of the present application.

[0117] In some embodiments, the dynamic process engine system 300 is a computer device or the dynamic process engine system 300 includes a computer device. The computer device includes a processor, a memory and a network interface connected via a system bus. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store data. The network interface of the computer device is used to communicate with other external terminals or servers via a network connection. In some embodiments, the network interface can be a wired network interface, and in some embodiments, the network interface can also be a wireless network interface. When the computer program is executed by the processor, the method in the embodiment of the present application is implemented.

[0118] Those skilled in the art will understand that Figure 3 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.

[0119] As described above, the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the above embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the above embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present application.

[0120] As used in the above embodiments, the term “when…” may be interpreted as “if…” or “after…” or “in response to determining…” or “in response to detecting…”, depending on the context. Similarly, the phrases “upon determining…” or “if (stated condition or event) is detected” may be interpreted as “if determining…” or “in response to determining…” or “upon detecting (stated condition or event)” or “in response to detecting (stated condition or event)”, depending on the context.

[0121] In the above embodiments, all or part of the embodiments can be implemented using software, hardware, firmware, or any combination thereof. When implemented using software, all or part of the embodiments can be implemented in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the processes or functions described in the embodiments of this application are generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, optical fiber, digital subscriber line) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that can be accessed by a computer, or a data storage device such as a server or data center that integrates one or more available media. The available medium can be magnetic media (e.g., floppy disk, hard disk, tape), optical media (e.g., DVD), or semiconductor media (e.g., solid-state drive).

[0122] Those skilled in the art will appreciate that all or part of the process steps in the above-described method embodiments can be implemented by a computer program instructing the relevant hardware. The program can be stored in a computer-readable storage medium, and when executed, the program can include the process steps in the above-described method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as ROM or random access memory (RAM), magnetic disks, or optical disks.

Claims

1. A low-code-based dynamic process engine method, characterized in that: include: After receiving a request for creating a real-time process including real-time business data and user attribute data, obtaining multiple preset process templates for selection based on the real-time business data; The real-time business data is the relevant description data of the user for the target process template, and the structured demand data obtained through feature extraction and association analysis; the user attribute data is the preset information associated with the position; Comparing nodes of multiple process templates to generate a difference node set including all difference nodes between the process templates, and presetting a first mark for all the difference nodes in a visual interface; Extracting nouns from the content of each of the difference nodes to obtain node keywords; Marking the difference nodes containing the node keyword or the synonyms of the node keyword in the real-time business data or the user attribute data as associated difference nodes; In the visual interface, a preset second mark different from the preset first mark is applied to the associated difference node.

2. The method according to claim 1, characterized in that After applying a preset second mark different from the preset first mark to the associated difference node in the visualization interface, the method further includes: Analyzing the data input items and data output items of each of the associated difference nodes; In a case where a data input item of one associated difference node is the same as a data output item of another associated difference node among two or more different associated difference nodes, marking the different associated difference nodes as a dependent node group; In the visualization interface, a preset third mark is applied to a plurality of associated difference nodes belonging to the same dependent node group.

3. The method according to claim 2, characterized in that After marking the different associated difference nodes as dependent node groups, the method further includes: When a selection operation of any dependency-associated difference node in the dependency node group is received in the visualization interface, all preceding dependency nodes of the dependency-associated difference node in the dependency node group are traced back and synchronously selected along the dependency relationship rule of the dependency node group; Prompt information for explaining the synchronous selection operation is generated and displayed.

4. The method according to claim 1, wherein In the visualization interface, applying a preset second mark different from the preset first mark to the associated difference node specifically includes: Parsing each of the node keywords to extract text keywords; Extracting a text parameter name from the text-type keyword, locating a corresponding sub-mapping table in a preset text weight mapping table, querying and obtaining a corresponding text corresponding to the text parameter name in the real-time business data, and searching the sub-mapping table for a quantitative weight of the corresponding text as a dynamic impact factor; The preset basic weight value corresponding to each of the associated difference nodes and the dynamic impact factor are calculated using a preset function model to generate a dynamic priority score corresponding to each of the associated difference nodes; In the visualization interface, a preset second mark is applied to the associated difference node, and according to the dynamic priority score, the preset second mark is rendered as a gradient style whose visual intensity is positively correlated with the numerical value.

5. The method according to claim 4, characterized in that After computing the preset basic weight value corresponding to each of the associated difference nodes and the dynamic impact factor using a preset function model to generate a dynamic priority score corresponding to each of the associated difference nodes, the method further includes: Obtain multiple historical process instances marked as failed in the enterprise's historical process database, perform statistical analysis on node combinations, and identify and extract high-frequency co-occurring node combinations; In the case where the associated difference node set of the associated difference node successfully matches the high-frequency co-occurrence node combination, the historical association strength of the corresponding high-frequency co-occurrence node combination is used as a dynamic risk coefficient; The dynamic risk coefficient is used to weight the dynamic priority score, and the visual intensity is adjusted according to the weighted dynamic priority score.

6. The method according to claim 4, characterized in that After computing the preset basic weight value corresponding to each of the associated difference nodes and the dynamic impact factor using a preset function model to generate a dynamic priority score corresponding to each of the associated difference nodes, the method further includes: Accumulating the dynamic priority scores of all associated difference nodes contained in each process template to obtain a template matching score of each process template; Identify the process template with the highest template matching score as the optimal recommended template; In the visual interface, a preset recommendation mark is added to the optimal recommendation template.

7. The method according to claim 1, characterized in that After applying a preset second mark different from the preset first mark to the associated difference node in the visualization interface, the method further includes: After receiving the final process created by the user, the final process is compared with the process template to identify the newly added process segments; Collecting statistics on the newly added process fragments; When the number of the first newly added process fragments exceeds a preset threshold value of the number of newly added processes, a template optimization suggestion including the first newly added process fragments is generated.

8. A dynamic process engine system, characterized in that: The dynamic process engine system includes: one or more processors and a memory; the memory is coupled to the one or more processors, the memory is used to store computer program code, the computer program code includes computer instructions, and the one or more processors call the computer instructions to enable the dynamic process engine system to execute the method described in any one of claims 1-7.

9. A computer program product comprising instructions, characterized in that When the computer program product is run on a dynamic process engine system, the dynamic process engine system is caused to execute the method according to any one of claims 1 to 7.

10. A computer-readable storage medium comprising instructions, characterized in that: When the instructions are executed on a dynamic process engine system, the dynamic process engine system is caused to execute the method according to any one of claims 1 to 7.