Business process self-construction and evolution method

By dynamically generating business process entities and automatically matching resources, the rigidity of traditional business processes is resolved, rapid response to market changes and resource optimization are achieved, and enterprise efficiency and reliability are improved.

CN120782234APending Publication Date: 2025-10-14INSPUR GENERSOFT CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511004262.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-07-21
Publication Date
2025-10-14

AI Technical Summary

Technical Problem

Traditional business process management methods rely on manual experience and predetermined rules, making it difficult to respond to rapidly changing market demands in real time, resulting in irrational resource allocation and affecting enterprise efficiency.

Method used

By dynamically extracting business process features, generating business process entities, automatically matching process resources and accessors, and dynamically constructing business processes, combined with simulation verification and caching technology, it adapts to process requirements and environmental changes.

Benefits of technology

It improves the efficiency and reliability of business process implementation, quickly adapts to process requirements and environmental changes, reduces manual intervention, and improves overall business efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120782234A_ABST
    Figure CN120782234A_ABST
Patent Text Reader

Abstract

The invention provides a business process self-construction and evolution method, and relates to the technical field of information technology application and business process management, and the method comprises the steps: automatically recognizing process characteristics according to a current business environment, generating process description, and constructing an executable process entity, and dynamically matching and executing required resources and a calling mode thereof in combination with a resource library and an access framework, and driving process operation and verification according to actual parameters to realize self-adaptive construction and efficient execution of a service process.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application belongs to the field of information technology application and business process management technology, and specifically relates to a business process self-construction and evolution method. Background Art

[0002] With the rapid development of information technology, business process management (BPM) is playing an increasingly important role in enterprise management. Traditional BPM methods often fail to adapt to rapidly changing market demands due to rigid business processes and fixed resource allocation. Especially in environments with highly dynamic resource changes, quickly and effectively identifying and allocating resources becomes crucial for improving enterprise responsiveness and efficiency. In an enterprise's business processes, activity nodes are the basic units for executing specific business processes. Traditional resource allocation methods often rely on manual experience and predetermined rules. This approach struggles to respond to changes in business processes in real time, leading to irrational resource allocation and impacting overall business efficiency.

[0003] To sum up, the current construction of business processes is highly dependent on professional and technical personnel. The rigid business processes and fixed resource allocation make it difficult to adapt to rapidly changing business needs and resource environments. Summary of the Invention

[0004] This application provides a business process self-construction and evolution method to solve one of the above technical problems.

[0005] The technical solutions adopted in this application are: The present application provides a method for self-constructing and evolving a business process, including: According to the current business context, dynamically extract business process features, determine business process descriptions, and dynamically generate business process entities, wherein the business process entities include process nodes and process node relationships; Match one or more process resources corresponding to each process node in a pre-built business process resource library through the business process description, and dynamically assemble the identifier of the process resource to the process node corresponding to the business process entity; According to the process resource, an accessor of the process resource is obtained from a pre-built business process resource access framework, and an identifier of the accessor of the process resource is dynamically assembled into a process node corresponding to the business process entity; According to the business process entity, the parameter values ​​required by the business process entity are dynamically extracted from the current business context and a process input parameter value set is formed, which is passed into the business process entity for execution and the execution effect is verified.

[0006] According to one embodiment of the present application, the business process description includes a description of process nodes and relationships between process nodes.

[0007] According to one embodiment of the present application, the process of dynamically extracting business process features, determining business process descriptions, and dynamically generating business process entities based on the current business context is specifically as follows: Obtain the current business context and dynamically extract business process features based on a pre-built business domain knowledge base, where the business process features include business entities, business relationships, business actions, business events, and input parameter items; Before determining the business process description, based on the business process characteristics, a search is performed from the business process cache pool to determine whether a corresponding business process entity exists. If no corresponding business process entity exists, the business process description is determined based on the business process characteristics, and a business process entity is dynamically generated.

[0008] According to an embodiment of the present application, before determining the business process description, searching the business process cache pool based on the business process characteristics to determine whether a corresponding business process entity exists further includes: If a corresponding business process entity exists, based on the process node description in the business process description and the process resources corresponding to the process nodes in the business process entity, searching whether there is a process resource with a higher matching degree than that in the business process entity; If there is a process resource with a higher matching degree than the business process entity, obtain the process resource and accessor with the highest matching degree, and update the resource configuration of the business process entity; If there is no process resource with a higher matching degree than the business process entity, the parameter values ​​required by the business process entity are dynamically extracted from the current business context and a process input parameter value set is formed and passed to the business process entity for execution.

[0009] According to one embodiment of the present application, the business process description is used to match one or more process resources corresponding to each process node in a pre-built business process resource library, and the identifier of the process resource is dynamically assembled to the process node corresponding to the business process entity, specifically: Obtaining descriptions of multiple process nodes in the business process description; According to the description of each process node, a match is performed in a pre-built process resource library to determine the process resource component that matches each process node, wherein the process resource library includes business application services and program components, wherein the business application services include business services of third-party systems.

[0010] According to one embodiment of the present application, according to the process resource description, the accessor of the process resource is obtained from a pre-built business process resource access framework, and the description information of the process resource scheduler is dynamically configured to the corresponding business process node, specifically: Obtaining each of the process resource call rules from a pre-built business process resource access framework; Dynamically match the corresponding process resource accessor through the process resource calling rules; The description information of the process resource accessor is obtained and configured on the process node of the corresponding business process entity.

[0011] According to one embodiment of the present application, according to the business process entity, the parameter values ​​required by the business process entity are dynamically extracted from the current business context and a process input parameter value set is formed, which is passed to the business process entity for execution and verification of the execution effect, specifically: According to the business process entity, dynamically extracting parameter values ​​required by the business process entity from the current business context and forming a process input parameter value set; Based on the business process characteristics, dynamically generate an output parameter set for each process node of the business process entity, that is, a target execution result of the business process entity; Passing the process input parameter value set into the business process entity for execution, and recording an execution log, wherein the execution log includes the result value of each process node; The result value of each process node execution is obtained and compared with the target execution result of the business process entity. When the simulation execution result of the business process entity is completely consistent with the target execution result, the business process entity is determined to be a business process that can be officially run in the current context, and the business process entity is loaded into the business process cache pool. When a business that meets the characteristics of the business process is subsequently executed, it is automatically and dynamically obtained from the business process cache pool.

[0012] According to one embodiment of the present application, it further includes: When the execution result of the business process entity is not completely consistent with the target execution result, the process input parameter value set is again passed into the business compensation logic defined in the business process to restore the business affected by the operation of the business process entity; Obtain the process configuration that causes inconsistent simulation execution results, including node relationships, parameter settings, execution conditions and conversion rules, and perform dynamic corrections until the simulation run results fully match.

[0013] A computer-readable storage medium stores a program, which implements the steps of the method when executed by a processor.

[0014] An electronic device comprising a memory, a processor, and a program stored on the memory and executable on the processor, the processor implementing the steps of the method as described when executing the program.

[0015] Due to the adoption of the above technical solutions, the application has the following beneficial effects: In the service execution process of the application, the service context is acquired, the service flow description is dynamically generated, the flow resources and resource accessors are automatically matched, and the service flow entity is dynamically constructed, so that the complex service flow defined by artificial is no longer relied on, the outstanding problems of service flow rigidity and resource allocation fixation in the field are solved, the implementation efficiency of the service flow is improved, on the other hand, through the simulation verification and dynamic evolution of the service flow in the execution process, the changes of the flow requirements and the environment are quickly adapted, the reliability of the service flow is improved, and through the cache technology and the preprocessing mechanism, the execution efficiency of the service flow is improved. BRIEF DESCRIPTION OF DRAWINGS

[0016] The accompanying drawings, which are included to provide a further understanding of the application, constitute a part of the application and illustrate the illustrative embodiments of the application and its description serve to explain the application, and do not constitute an improper limitation on the application. In the drawings: Figure 1 A flowchart of a service flow self-constructing and evolving method provided for the embodiment of the application is shown in the figure; Figure 2 A structure diagram of a service flow self-constructing and evolving system provided for the embodiment of the application is shown in the figure; Figure 3 A structure diagram of an electronic device provided for the embodiment of the application is shown in the figure. DETAILED DESCRIPTION

[0017] In order to more clearly explain the overall concept of the application, the following will be described in detail in the form of examples with reference to the accompanying drawings of the specification.

[0018] In the following description, a large number of specific details are set forth in order to facilitate a thorough understanding of the application, however, the application can also be implemented in other ways different from those described herein, therefore, the protection scope of the application is not limited by the specific embodiments disclosed below. It should be noted that the embodiments of the application and the features in each embodiment can be combined with each other without conflict.

[0019] In this application, unless otherwise expressly specified and limited, a first feature "above" or "below" a second feature may be that the first and second features are in direct contact, or the first and second features are in indirect contact through an intermediate medium. In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present application. In this specification, the schematic representation of the above terms does not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in an appropriate manner in any one or more embodiments or examples.

[0020] Example 1 like Figure 1 As shown, a business process self-construction and evolution method includes: S101. Dynamically extract business process features based on the current business context, determine the business process description, and dynamically generate a business process entity, wherein the business process entity includes process nodes and process node relationships.

[0021] As mentioned above, the system first needs to obtain the current business context. The business context here refers to all information related to a specific business operation, including but not limited to: Business entities: such as customers, orders, etc.

[0022] Business relationships: For example, the relationship between orders and products.

[0023] Business actions: such as creating orders, shipping, and other specific operations.

[0024] Business events: such as order status changes.

[0025] Input parameter items: Various input data specific to the business scenario, such as customer preferences.

[0026] Based on the business context obtained above, the system uses a pre-built business domain knowledge base to dynamically extract business process features. This step involves analyzing the current business environment and identifying the key elements required to execute the business process. These features typically include: Specific tasks or activities that need to be performed (i.e. process nodes).

[0027] How these tasks interact or depend on each other (i.e., process node relationships).

[0028] After extracting the business process features, the next step is to determine a detailed business process description. This description is a structured representation of the entire business process, which not only defines each node (i.e., specific tasks) in the process, but also includes the logical relationships between these nodes. For example, some tasks may need to be executed in sequence, while others can be handled in parallel.

[0029] In addition, before determining the business process description, the system will check whether a corresponding business process entity already exists in the business process cache pool. If it exists and is applicable, it will be used directly; otherwise, a new description will be created based on the extracted business process features.

[0030] Finally, based on the determined business process description, the system will dynamically generate a specific business process entity. This entity contains: Process nodes: Each node represents a specific task or activity in the business process.

[0031] Process node relationships: Describes the interaction between these nodes, such as sequential execution, parallel execution, etc.

[0032] The generated business process entity is not just a theoretical design, it also prepares the resource allocation and other configurations required for subsequent steps, ensuring efficient execution of actual business operations.

[0033] It should be noted that in specific implementation scenarios, on the basis of the above scheme, historical data can be used to train machine learning models to predict future business needs and resource usage. By analyzing past business contexts and their corresponding optimal process configurations, the model can provide best practice recommendations for future business processes. For example, before an e-commerce promotion event, the system can predict the most effective order processing process based on data from similar past events and prepare the corresponding resource configuration in advance.

[0034] In specific implementation scenarios, on the basis of the above scheme, real-time monitoring and feedback mechanisms can be integrated to allow the system to automatically adjust business processes during runtime based on actual execution results. This includes but is not limited to dynamically adjusting node dependencies, reallocating resources, etc. If a bottleneck occurs (such as slow inventory checking), the system can automatically adjust to parallel processing or add more resources to speed up the process.

[0035] S102, through the business process description, match one or more process resources corresponding to each process node in the pre-constructed business process resource library, and dynamically assemble the identification of the process resource to the process node corresponding to the business process entity.

[0036] As mentioned above, the system needs to obtain a detailed description of the current business process, including descriptions of multiple process nodes. Each process node represents a specific task or activity in the business process. This step ensures that the system understands the task requirements of each process node and its relationship to other nodes.

[0037] Based on the specific requirements of each process node (such as required functionality and performance), the system searches for the most suitable process resource components within a pre-built business process resource library. These resources can be internally developed services, third-party APIs, or other types of program components, which together form the foundation for business process execution. Algorithms are used to match the requirements of the process node with the characteristics of the resources in the resource library. For example, precise matching can be achieved through keyword searches, tag matching, or more complex machine learning models.

[0038] Once the most suitable resource component is found, the system dynamically adds its identifier (such as the service name, version number, and call address) to the corresponding process node of the business process entity. This is done to clearly indicate which specific resource each process node should use to complete its task. This means that when the business process is executed, each node knows which resource it needs to call and how to call it.

[0039] For example, suppose there is an order processing process for an e-commerce platform, which includes the following process nodes: "receiving order", "checking inventory", "generating invoice", and "arranging shipment".

[0040] This node may need to call a front-end application service to receive information submitted by the customer. The system will search the resource library for a service that can handle HTTP requests and add the service identifier (such as OrderService_v1.0) to this node.

[0041] For the task of checking inventory, the system may select a background service dedicated to inventory management. Through resource matching, the system finds and marks InventoryCheckService_v2.1 as the resource identifier of this node.

[0042] To generate an invoice, the system needs to find a finance-related service. After matching, it selects InvoiceGenerationService_v3.5 as the resource identifier for this node.

[0043] Finally, for the task of arranging shipments, the system will select an API interface of the logistics management system, such as ShippingArrangementAPI_v4.0.

[0044] It's important to note that, in specific implementation scenarios, a multi-dimensional scoring system can be established based on the above solution to quantitatively evaluate the quality of different resources and help make more accurate selections. Each resource can be scored based on multiple dimensions (such as performance, reliability, cost, and user experience). During the resource matching process, these scores are comprehensively considered, with resources with higher overall scores being prioritized.

[0045] In specific implementation scenarios, building on the above solution, real-time monitoring tools can be integrated to continuously monitor the performance of selected resources and dynamically adjust resource allocation based on actual performance. A monitoring dashboard can be configured to display real-time key performance indicators (KPIs) for resources used at each process node, such as response time and error rate. When a resource's performance falls below a preset threshold, an automatic reselection mechanism is triggered, selecting a more suitable alternative resource from the resource library and updating the corresponding configuration in the business process entity.

[0046] S103: According to the process resource, obtain the accessor of the process resource from a pre-built business process resource access framework, and dynamically assemble the identifier of the accessor of the process resource to the process node corresponding to the business process entity.

[0047] As mentioned above, the system has determined the process resources (such as services, API interfaces or other program components) required for each process node. The specific description information of these resources (including but not limited to name, version, functional characteristics, etc.) is the basis for obtaining the process resource accessor.

[0048] The system accesses the pre-built business process resource access framework, a centralized management system for all available resources and their access methods. Based on the detailed information in the process resource description (such as resource type and version), the system retrieves the call rules applicable to that resource. These rules define how to interact with a specific resource, such as how to call an API and the parameter format.

[0049] Based on the above call rules, the system automatically matches the most appropriate connector for the current process resource. An connector can be understood as an interface or adapter that converts requests in the business process into a form that the target resource can understand and execute. This process ensures that even if different resources have different interface standards, they can still be seamlessly connected through the appropriate connector.

[0050] Once the correct access point is found, the system retrieves its descriptive information (such as name, version, and features) and dynamically adds this information to the corresponding business process entity's process node as an identifier. This not only helps to record which access points are used where, but also provides a reference for any subsequent maintenance or optimization that may be needed.

[0051] It should be noted that in specific implementation scenarios, the above solution can also be integrated with real-time performance monitoring tools to continuously monitor the performance of each access point. Key performance indicators (KPIs) such as response time and success rate are recorded after each call. If the performance of an access point degrades or fails, the system can automatically switch to a backup access point or reselect the optimal access point, and update the configuration of the business process entity.

[0052] In specific implementation scenarios, building on the above solution, you can also design detailed error handling logic for each access point and establish a robust fault-tolerance mechanism. For different types of errors (such as network timeouts and service unavailability), define corresponding retry strategies, degradation plans, or other compensatory measures. By explicitly outlining this handling logic in the access point configuration, the system automatically executes pre-defined countermeasures when problems arise, reducing the need for manual intervention.

[0053] In specific implementation scenarios, building on the above solution, a health check API can be developed to periodically verify the working status of access points. Each access point is provided with a health check endpoint that returns its current operational status. The system periodically calls these endpoints. If an access point is found to be unhealthy, an alert is issued and recovery procedures are triggered (such as restarting the service or replacing the access point).

[0054] S104 , dynamically extracting parameter values ​​required by the business process entity from the current business context according to the business process entity and forming a process input parameter value set, which is passed to the business process entity for execution and the execution effect is verified.

[0055] As mentioned above, the system first identifies the specific parameters required for each process node based on the business process entity (that is, the defined business process and its nodes). These parameters are the basis for ensuring the correct execution of the process.

[0056] Analyze the functional requirements of each process node to determine what input data the node requires when executing. For example, in an order processing process, the "Create Order" node may require information such as customer ID, product ID, quantity, etc.

[0057] The current business context includes, but is not limited to, business entities (such as customers and orders), business relationships, business actions, business events, and various input parameters. Based on the needs of the business process entities, the system dynamically extracts the corresponding parameter values ​​from the current business context.

[0058] The system obtains the required parameter values ​​from the current business environment through queries or calculations. For example, if a customer ID is needed, it can be extracted from the current user login information; if a product ID is needed, it may be obtained from the data submitted by the front-end form.

[0059] Once all necessary parameter values ​​are extracted, the system organizes them into a structured collection, usually in the form of key-value pairs, for subsequent use.

[0060] Pair each parameter with its corresponding value and organize them into sets according to a certain format (such as JSON or XML). For example, {"customerId": "12345", "productId": "67890", "quantity": 2}.

[0061] The formed process input parameter value set is passed to the corresponding node in the business process entity for actual execution.

[0062] According to the business process definition, a set of parameter values ​​is passed as input to a specific process node. This usually involves calling a service interface, performing database operations, or other forms of data processing.

[0063] After execution is complete, the system verifies the results to ensure that the business process runs as expected.

[0064] Record execution logs, including the result value of each process node.

[0065] Compare the simulation results with the preset target execution results to see if they are consistent. If they are consistent, the business process entity is considered ready for formal operation and is loaded into the business process cache pool for quick access in similar situations in the future.

[0066] If there is any inconsistency, you need to adjust the process configuration through business compensation logic until the simulation run results completely match the target execution results.

[0067] It should be noted that in specific implementation scenarios, building on the above solution, machine learning models can be used to analyze historical data to predict and automatically complete missing or incomplete parameter values. Past successful business process instances and their parameter values ​​can be collected as training data. Classification or regression models can be used to predict possible parameter values, which can then be provided to the user for confirmation or directly added to the parameter set.

[0068] In specific implementation scenarios, a real-time data validation mechanism can be introduced based on the above solution to ensure the accuracy of extracted parameter values. Rules such as data format checks and range validation are applied while extracting parameter values. For data that does not meet expectations, cleaning operations are automatically triggered (such as correcting format errors and filtering invalid values) or the user is prompted for manual intervention.

[0069] In specific implementation scenarios, building on the above solution, a flexible configuration system can be developed to dynamically specify the source of parameter values. This can provide a UI or API interface to allow users to easily modify the method for obtaining parameter values ​​(e.g., switching from a database to an external API). This can also support selecting different data sources based on conditional logic (e.g., time, location, etc.).

[0070] According to one embodiment of the present application, the business process description includes a description of process nodes and relationships between process nodes.

[0071] As mentioned above, a process node is the basic unit in a business process, representing a specific task or activity. Each node defines the specific operation to be performed. For example, in an order processing process, the following process nodes may be included: Receive order: Receive order information from customers.

[0072] Check inventory: Confirm whether there is enough inventory to meet order requirements.

[0073] Generate Invoices: Generate and send invoices to customers.

[0074] Arrange delivery: Arrange logistics delivery according to order details.

[0075] Each of these nodes is an independent and clear task, and together they form the basis of the entire business process.

[0076] A process node relationship describes how each process node interacts and connects with each other. It defines the logical order between nodes and how data is transferred. Common types of process node relationships include but are not limited to: After one node is completed, the next node can start to execute. For example, "Check Inventory" must be executed after "Receive Order".

[0077] Multiple nodes can be processed simultaneously. For example, in some cases, "generate invoice" and "arrange shipment" can be processed simultaneously to improve efficiency.

[0078] Specific conditions determine which path to follow. For example, if inventory is low, go to "Notify customer and cancel order"; if inventory is sufficient, continue to "Arrange shipment."

[0079] Repeat a set of nodes when a certain condition is met. For example, for a standing order, you might need to periodically check the inventory status until the goods are ready.

[0080] For example, suppose there is a simplified order processing flow described as follows: Receive order -> 2. Check stock If there is sufficient stock -> generate invoice -> arrange shipment If stock is low -> notify customer and cancel order In this example: The process nodes include: "Receive order", "Check inventory", "Generate invoice", "Arrange shipment", "Notify customer and cancel order".

[0081] The process node relationship defines the logical relationship between these nodes: first, "Receive Order," then "Check Inventory." Depending on inventory availability, different paths are selected for further execution. If inventory is sufficient, "Generate Invoice" and "Arrange Shipment" are executed sequentially; if inventory is insufficient, the process proceeds to "Notify Customer and Cancel Order."

[0082] According to one embodiment of the present application, the process of dynamically extracting business process features, determining business process descriptions, and dynamically generating business process entities based on the current business context is specifically as follows: Obtain the current business context and dynamically extract business process features based on a pre-built business domain knowledge base, where the business process features include business entities, business relationships, business actions, business events, and input parameter items; Before determining the business process description, based on the business process characteristics, a search is performed from the business process cache pool to determine whether a corresponding business process entity exists. If no corresponding business process entity exists, the business process description is determined based on the business process characteristics, and a business process entity is dynamically generated.

[0083] As mentioned above, the system first needs to obtain the current business context. This includes, but is not limited to, business entities (such as customers and orders), business relationships (such as the association between orders and products), business actions (such as creating an order and shipping a product), business events (such as order status changes), and input parameters (various input data specific to the business scenario, such as customer preferences).

[0084] Based on the acquired business context information, the system uses the pre-built business domain knowledge base to dynamically extract business process features.

[0085] Business entities: Identify the main objects involved, such as customers, products, etc.

[0086] Business relationships: Identify the relationships between these entities, such as the association between orders and products.

[0087] Business actions: specify the specific operations that need to be performed, such as creating an order, checking inventory, etc.

[0088] Business events: Identify key events that may trigger process changes, such as order status updates.

[0089] Input parameter items: Determine the necessary input data required to perform each action, such as order ID, customer information, etc.

[0090] Before determining a specific business process description, the system searches the business process cache pool to see if a business process entity that matches the current business process characteristics already exists. This process is designed to avoid duplication of identical business processes, improve efficiency, and ensure consistency.

[0091] If a matching existing business process entity is found, it can be used directly or fine-tuned based on the actual situation.

[0092] If no match is found, proceed to the next step.

[0093] If no suitable business process entity is found in the cache pool, the system will define a detailed business process description based on the extracted business process features.

[0094] Business process description is a structured representation that details the various nodes in the entire business process (i.e., specific tasks or activities) and the logical relationships between them (such as sequential execution, parallel execution, etc.).

[0095] A process node means that each node represents a specific task or activity in a business process, such as "receiving an order", "checking inventory", etc.

[0096] Node relationships describe how these tasks interact or depend on each other, such as some tasks are executed sequentially while other tasks can be processed in parallel.

[0097] Once the business process description is determined, the system will dynamically generate a new business process entity based on it.

[0098] Business process entity is an actual executable workflow instance automatically generated based on the business process description. It not only contains all necessary process nodes, but also clarifies the relationship between these nodes.

[0099] In addition, the system will allocate the most suitable resources (such as services, API interfaces, etc.) to each process node to ensure that each task can be completed efficiently.

[0100] According to an embodiment of the present application, before determining the business process description, searching the business process cache pool based on the business process characteristics to determine whether a corresponding business process entity exists further includes: If a corresponding business process entity exists, based on the process node description in the business process description and the process resources corresponding to the process nodes in the business process entity, searching whether there is a process resource with a higher matching degree than that in the business process entity; If there is a process resource with a higher matching degree than the business process entity, obtain the process resource and accessor with the highest matching degree, and update the resource configuration of the business process entity; If there is no process resource with a higher matching degree than the business process entity, the parameter values ​​required by the business process entity are dynamically extracted from the current business context and a process input parameter value set is formed and passed to the business process entity for execution.

[0101] As mentioned above, the system first dynamically extracts business process features based on the current business context. Based on these features, it searches the business process cache pool to see if there are already existing business process entities that match the current requirements. By reusing existing business process entities, efficiency is improved and consistency is ensured.

[0102] If one or more business process entities matching the characteristics of the current business process are found in the business process cache pool, continue with the following steps for optimization and verification.

[0103] For each business process entity found, the system conducts a deeper analysis based on its process node descriptions (i.e., the tasks or activities at each node) and the actual process resources (such as services and API interfaces) corresponding to each node in the entity. The system then checks whether new resources are available that are more suitable than the currently used process resources. This may involve considering factors such as resource performance, cost, and reliability.

[0104] The system will search the pre-built business process resource library to see if there are new resources that are more suitable for the current process node.

[0105] Compare various metrics (such as response time, success rate, and cost) of new resources with those of existing resources to assess whether they can better meet current business needs.

[0106] Once a new resource is found that is more compatible with the existing resource, the system will take action to update the resource configuration of the business process entity.

[0107] Obtain the most matching process resource and its connector: The system selects the best new resource and obtains the corresponding connector (adapter) to call these resources correctly.

[0108] Add the selected new resource and its connector information to the business process entity, replacing the original configuration. This includes but is not limited to resource name, version number, call address, and other information.

[0109] If the system fails to find a better option than the existing resources, it directly uses the existing business process entity.

[0110] Dynamically extract parameter values ​​from the current business context: The system extracts all parameter values ​​required to execute the business process entity from the current business context.

[0111] Organize the extracted parameter values ​​into a structured collection, usually in the form of key-value pairs, such as JSON format.

[0112] The formed parameter value set is passed as input to the business process entity to start the actual execution of the process.

[0113] According to one embodiment of the present application, the business process description is used to match one or more process resources corresponding to each process node in a pre-built business process resource library, and the identifier of the process resource is dynamically assembled to the process node corresponding to the business process entity, specifically: Obtaining descriptions of multiple process nodes in the business process description; According to the description of each process node, a match is performed in a pre-built process resource library to determine the process resource component that matches each process node, wherein the process resource library includes business application services and program components, wherein the business application services include business services of third-party systems.

[0114] As mentioned above, the system first needs to extract the specific descriptions of all process nodes from the generated business process description.

[0115] Each process node represents a specific task or activity in the business process, such as "receiving orders", "checking inventory", etc.

[0116] The process node description includes information such as the node's task requirements, input and output parameters, and relationships with other nodes.

[0117] Based on the description of each process node, the system will search for the process resource component that best suits the node requirements in the pre-built business process resource library.

[0118] The process resource library is a system that centrally manages all available resources and their access methods. It contains various resources that can be used to execute business processes, such as business application services and program components.

[0119] Business application services can be services developed within the enterprise or business services of third-party systems (such as payment gateways, logistics tracking services, etc.).

[0120] Program components can be small software modules or API interfaces with specific functions.

[0121] The system analyzes the requirements of each process node (such as required functions, performance requirements, etc.) and searches the resource library for the most appropriate resource components to meet these requirements.

[0122] This may involve using keyword searches, tag matching, or more complex algorithms for exact matching.

[0123] Once suitable resource components are found, the system determines them as the best choices for the corresponding process nodes.

[0124] For each process node, the system selects one or more most suitable resource components. The selection criteria may include but are not limited to the functionality, performance indicators, cost-effectiveness, etc. of the resource.

[0125] If multiple resources can meet the demand, the system may choose the best one based on priority or other rules.

[0126] Dynamically add the relevant identifier of the selected process resource to the process node corresponding to the business process entity.

[0127] Identification information usually includes key information such as the resource name, version number, and call address to ensure that these resources can be called correctly during actual execution.

[0128] The system will attach the above identification information as attributes to the corresponding process nodes of the business process entity, so that each node knows which specific resource it needs to call to complete its task.

[0129] Suppose there is a process node "Check Inventory", and the system finds the most suitable resource InventoryCheckService_v2.1 in the resource library, then the identification information of this service will be added to the "Check Inventory" node for subsequent calls.

[0130] For example, suppose there is an order processing process for an e-commerce platform, which includes the following process nodes: "receiving orders", "checking inventory", "generating invoices", and "arranging shipments".

[0131] This node may need to call a front-end application service to receive information submitted by the customer. The system finds and selects OrderService_v1.0 in the resource library as the resource for this node.

[0132] For the task of checking inventory, the system finds the most suitable inventory management service InventoryCheckService_v2.1 in the resource library and adds its identifier to the node.

[0133] To generate invoices, the system selects the finance-related service InvoiceGenerationService_v3.5 and adds its identifier to the corresponding node.

[0134] Finally, for the task of arranging shipments, the system selects an API interface ShippingArrangementAPI_v4.0 of the logistics management system and adds its identifier to the node.

[0135] According to one embodiment of the present application, according to the process resource description, the accessor of the process resource is obtained from a pre-built business process resource access framework, and the description information of the process resource scheduler is dynamically configured to the corresponding business process node, specifically: Obtaining each of the process resource call rules from a pre-built business process resource access framework; Dynamically match the corresponding process resource accessor through the process resource calling rules; The description information of the process resource accessor is obtained and configured on the process node of the corresponding business process entity.

[0136] As mentioned above, the system first needs to obtain the calling rules for each process resource from the pre-built business process resource access framework. The business process resource access framework is a system that centrally manages all available resources and their access methods. It contains the calling rules and access methods for various resources (such as services and API interfaces).

[0137] Call rules define how to interact with specific resources, including but not limited to the method of calling the API, parameter format, response processing, etc. For example, a service may require JSON format data to be passed through an HTTP POST request and return a JSON response containing a status code and result data.

[0138] Based on the obtained process resource calling rules, the system will dynamically match the accessor that best suits the current process resource.

[0139] A process resource accessor can be thought of as an interface or adapter, responsible for converting requests within a business process into a form that the target resource can understand and execute. Different resources may have different interface standards, and the accessor's role is to ensure that these resources can be seamlessly integrated into the business process.

[0140] The system automatically selects the most appropriate interface based on the call rules. For example, if a process resource requires a RESTful API call, the system will select an interface suitable for the RESTful API; if the SOAP protocol is required, the corresponding SOAP interface will be selected.

[0141] Once the most suitable access point is determined, the system will obtain relevant description information of the access point.

[0142] The description information usually includes the name, version number, functional features, etc. This information helps to record which access points are used where and provides a reference for subsequent maintenance or optimization.

[0143] For an adapter named RestClientAdapter_v1.0, its description may include its version number, supported HTTP methods (GET, POST, etc.), default content type (such as application / json), etc.

[0144] The obtained description information of the process resource accessor is dynamically configured to the corresponding process node of the business process entity.

[0145] The system attaches the description of the accessor as an attribute to the corresponding process node of the business process entity. In this way, during actual runtime, each process node knows which accessor it needs to use to call the required resources.

[0146] For example, if there's a process node called "Inventory Check," and the system selects InventoryCheckService_v2.1 as its resource and RestClientAdapter_v1.0 as its adapter, the adapter's description will be added to the "Inventory Check" node so that the service can be called correctly during execution.

[0147] For example, let's assume there's an order processing process for an e-commerce platform, where one of the process nodes is "checking inventory." In this process: The system obtains the calling rules of InventoryCheckService_v2.1 from the pre-built business process resource access framework. For example, it needs to access a specific URL through an HTTP GET request and accept a response in JSON format.

[0148] Based on the above calling rules, the system recognizes that the most suitable access point for InventoryCheckService_v2.1 may be a REST client adapter, such as RestClientAdapter_v1.0.

[0149] The system obtains the description information of RestClientAdapter_v1.0, including its name, version number, supported HTTP methods, etc.

[0150] Finally, the system dynamically configures the description information of RestClientAdapter_v1.0 to the "Check Inventory" process node, so that during actual execution, the "Check Inventory" task knows which adapter to use to call InventoryCheckService_v2.1.

[0151] According to one embodiment of the present application, according to the business process entity, the parameter values ​​required by the business process entity are dynamically extracted from the current business context and a process input parameter value set is formed, which is passed to the business process entity for execution and verification of the execution effect, specifically: According to the business process entity, dynamically extracting parameter values ​​required by the business process entity from the current business context and forming a process input parameter value set; Based on the business process characteristics, dynamically generate an output parameter set for each process node of the business process entity, that is, a target execution result of the business process entity; Passing the process input parameter value set into the business process entity for execution, and recording an execution log, wherein the execution log includes the result value of each process node; The result value of each process node execution is obtained and compared with the target execution result of the business process entity. When the simulation execution result of the business process entity is completely consistent with the target execution result, the business process entity is determined to be a business process that can be officially run in the current context, and the business process entity is loaded into the business process cache pool. When a business that meets the characteristics of the business process is subsequently executed, it is automatically and dynamically obtained from the business process cache pool.

[0152] As mentioned above, based on the requirements of the business process entities, the system dynamically extracts the required parameter values ​​from the current business context.

[0153] The system first analyzes the functional requirements of each process node to determine what input data the node requires when executing. For example, in an order processing process, the "Create Order" node may require information such as customer ID, product ID, quantity, etc.

[0154] Next, the system extracts these parameter values ​​from the current business environment (such as the database, data submitted by the front-end form, etc.) and organizes them into a structured collection, usually in the form of key-value pairs, for easy subsequent use. For example, {"customerId": "12345", "productId": "67890", "quantity": 2}.

[0155] Based on the business process characteristics, the system dynamically generates the expected output parameter set for each process node, that is, the target execution result.

[0156] For each process node, the system predicts what the output result should be after execution, including but not limited to success flags, returned data formats, error codes, etc.

[0157] For example, the target execution result of the "Check Inventory" node may be whether the inventory quantity is sufficient and the specific inventory quantity.

[0158] The formed process input parameter value set is passed as input to the corresponding node in the business process entity for actual execution, and the execution log is recorded.

[0159] The system passes parameter value sets as input to specific process nodes according to the business process definition. This usually involves calling service interfaces, executing database operations, or other forms of data processing.

[0160] During execution, the system records detailed execution logs, including the result values ​​of each process node. For example, the execution log of a node may show that the "Check Inventory" node returned insufficient inventory information.

[0161] Get the actual result value of each process node execution and compare it with the previously predicted target execution result.

[0162] The system collects the execution results of all process nodes and compares them with the preset target execution results. If the two are completely consistent, the business process entity is considered to be officially operational.

[0163] For example, if the actual result of a Check Inventory node indicates that inventory is indeed low, and this result is consistent with expectations, then the node is confirmed to have executed correctly.

[0164] When the simulation execution result of the business process entity is completely consistent with the target execution result, the system loads it into the business process cache pool.

[0165] This means that the business process entity has been verified and can be directly reused in the future if it meets the same business process characteristics without having to be rebuilt.

[0166] When similar businesses are executed subsequently, the system will automatically and dynamically obtain the corresponding business process entities from the cache pool, improving efficiency and consistency.

[0167] According to one embodiment of the present application, it further includes: When the execution result of the business process entity is not completely consistent with the target execution result, the process input parameter value set is again passed into the business compensation logic defined in the business process to restore the business affected by the operation of the business process entity; Obtain the process configuration that causes inconsistent simulation execution results, including node relationships, parameter settings, execution conditions and conversion rules, and perform dynamic corrections until the simulation run results fully match.

[0168] As described above, after the business process entity is executed, if it is found that the actual result is inconsistent with the preset target execution result, the subsequent processing steps are triggered.

[0169] This situation may be caused by various reasons, such as a node failing to execute correctly, incorrect parameter settings, improper relationships between nodes or improper conversion rules, etc.

[0170] The set of process input parameter values ​​that caused the problem is passed as input to the business compensation logic in the business process definition, with the goal of restoring the affected business state to its previous state.

[0171] Business compensation logic is a set of predefined mechanisms used to cancel or correct problems that occur in business processes and ensure the consistency and integrity of business data.

[0172] The system invokes compensating logic to undo actions that have already occurred but resulted in inconsistent results. For example, if a Shipment node fails and affects inventory and order status, compensating logic might restore inventory levels and reset order status.

[0173] The system needs to identify the specific process configuration that causes the simulation run results to be inconsistent with the target execution results.

[0174] Check whether the connection between each process node is correct, whether there are unnecessary dependencies or missing necessary steps.

[0175] Review the accuracy of the input parameters used by each node, including but not limited to data type, format, default value, etc.

[0176] Analyze whether the conditional expressions that determine the direction of process branches are reasonable, such as whether the nodes that should be skipped under certain conditions are correctly skipped.

[0177] Evaluate whether there are errors in the data conversion process from one node to another to ensure that the data is not lost or distorted during the transmission process.

[0178] Based on the above analysis, the process configuration where the problem was found was adjusted until the simulation run results completely matched the target execution results.

[0179] If problems are found in the connections between nodes, such as incorrect order or missing key steps, the system will reconfigure these relationships.

[0180] For any parameter setting errors, the system will adjust according to the correct standards to ensure that all inputs meet expectations.

[0181] Improve or modify the conditional judgment logic so that it can more accurately control the flow of the process.

[0182] Modify data conversion rules to ensure the consistency and accuracy of data when it is transmitted between different nodes.

[0183] After several iterations and adjustments, the system runs the simulation again until the results are exactly the same as the target execution results.

[0184] After each adjustment, the system will re-execute the entire business process and record a new execution log to verify whether the results meet expectations.

[0185] If discrepancies still exist, continue analyzing and correcting the relevant configurations until consistency is achieved.

[0186] The embodiment of this specification also provides a business process self-construction and evolution system, Figure 2 This is a structural diagram of a business process self-construction and evolution system provided in the embodiment of this specification, such as Figure 2 As shown, the system includes: a domain knowledge base 201, a business process resource library 202, a resource access framework 203, a process dynamic constructor 204, a process executor 205 and a business process cache pool 206, which are specifically as follows: The domain knowledge base 201 is oriented towards a specified business domain and precipitates and manages the domain knowledge required to build business processes. Domain knowledge includes objects such as business entities, business relationships, business actions, and business events, which are stored in the form of triples, and can quickly analyze and form relationships between domain knowledge.

[0187] The business process resource library 202 is oriented to a specific business domain and accumulates and manages process resources required for building business processes, including business application services and program components, wherein the business application services include business services of third-party systems.

[0188] The resource access framework 203 is oriented towards a specific business domain, accumulates and manages the resource accessors required for business process execution, and provides a unified execution interface for the resource accessors.

[0189] The process dynamic constructor 204 dynamically extracts business process features, determines the business process description, and dynamically generates a business process entity based on the current business context.

[0190] The process executor 205 dynamically extracts the parameter values ​​required by the business process entity from the current business context and forms a set of process input parameter values, which are passed to the business process entity for execution and verification of the execution effect, and the processes that meet the execution effect are cached in the business process cache pool; each execution dynamically updates the business process entity by sensing resource changes.

[0191] The business process cache pool 206 caches business processes that meet the execution requirements. The system will first obtain the business process that meets the requirements from the business process cache pool, and then dynamically construct it through the business process constructor.

[0192] The embodiment of this specification also provides a business process self-construction and evolution device, such as Figure 3 As shown, the device includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the above method.

[0193] The embodiments of this specification also provide a non-volatile computer storage medium storing computer executable instructions, wherein the computer executable instructions are configured to execute the above method.

[0194] The various embodiments in this specification are described in a progressive manner. Similar portions between the various embodiments can be referenced to each other, and each embodiment focuses on the differences from the other embodiments. In particular, the device, apparatus, and non-volatile computer storage medium embodiments are generally similar to the method embodiments, so their descriptions are relatively simplified. For relevant details, refer to the descriptions of the method embodiments.

[0195] The foregoing description of this specification describes specific embodiments. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims can be performed in an order different from that described in the embodiments and still achieve the desired results. Furthermore, the processes depicted in the accompanying drawings do not necessarily require the specific order shown or the sequential order to achieve the desired results. In certain embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0196] The devices and media provided in the embodiments of this specification correspond one-to-one to the methods. Therefore, the devices and media also have similar beneficial technical effects to their corresponding methods. Since the beneficial technical effects of the methods have been described in detail above, the beneficial technical effects of the devices and media will not be repeated here.

[0197] Those skilled in the art will appreciate that the embodiments of this specification may be provided as methods, systems, or computer program products. Thus, this specification may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware. Furthermore, this specification may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0198] This specification is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of this specification. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0199] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.

[0200] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.

[0201] In a typical configuration, a computing device includes one or more processors (CPUs), input / output interfaces, network interfaces, and memory.

[0202] Memory may include non-permanent storage in a computer-readable medium, in the form of random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of a computer-readable medium.

[0203] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can be implemented using any method or technology to store information. Information can be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase-change RAM (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer-readable media does not include transitory computer-readable media such as modulated data signals and carrier waves.

[0204] It should also be noted that the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, commodity, or apparatus that includes a series of elements includes not only those elements but also other elements not explicitly listed, or includes elements inherent to such process, method, commodity, or apparatus. In the absence of further limitations, an element defined by the phrase "comprises a ..." does not exclude the presence of other identical elements in the process, method, commodity, or apparatus that includes the element.

[0205] The foregoing description is merely one or more embodiments of this specification and is not intended to limit this specification. It will be apparent to those skilled in the art that various modifications and variations may be made to one or more embodiments of this specification. Any modifications, equivalent substitutions, or improvements made within the spirit and principles of one or more embodiments of this specification are intended to be within the scope of the claims of this specification.

Claims

1. A business process self-construction and evolution method, characterized in that: include: According to the current business context, dynamically extract business process features, determine business process descriptions, and dynamically generate business process entities, wherein the business process entities include process nodes and process node relationships; Match one or more process resources corresponding to each process node in a pre-built business process resource library through the business process description, and dynamically assemble the identifier of the process resource to the process node corresponding to the business process entity; According to the process resource, an accessor of the process resource is obtained from a pre-built business process resource access framework, and an identifier of the accessor of the process resource is dynamically assembled into a process node corresponding to the business process entity; According to the business process entity, the parameter values ​​required by the business process entity are dynamically extracted from the current business context and a process input parameter value set is formed, which is passed to the business process entity for execution and the execution effect is verified, specifically: According to the business process entity, dynamically extracting parameter values ​​required by the business process entity from the current business context and forming a process input parameter value set; Based on the business process characteristics, dynamically generate an output parameter set for each process node of the business process entity, that is, a target execution result of the business process entity; Passing the process input parameter value set into the business process entity for execution, and recording an execution log, wherein the execution log includes the result value of each process node; The result value of each process node execution is obtained and compared with the target execution result of the business process entity. When the simulation execution result of the business process entity is completely consistent with the target execution result, the business process entity is determined to be a business process that can be officially run in the current context, and the business process entity is loaded into the business process cache pool. When a business that meets the characteristics of the business process is subsequently executed, it is automatically and dynamically obtained from the business process cache pool.

2. The method according to claim 1, characterized in that The business process description includes descriptions of process nodes and relationships between process nodes.

3. The method according to claim 1 or 2, characterized in that The process of dynamically extracting business process features, determining business process descriptions, and dynamically generating business process entities based on the current business context is as follows: Obtain the current business context and dynamically extract business process features based on a pre-built business domain knowledge base, where the business process features include business entities, business relationships, business actions, business events, and input parameter items; Before determining the business process description, based on the business process characteristics, a search is performed from the business process cache pool to determine whether a corresponding business process entity exists. If no corresponding business process entity exists, the business process description is determined based on the business process characteristics, and a business process entity is dynamically generated.

4. The method according to claim 1, wherein Before determining the business process description, based on the business process characteristics, searching a business process cache pool to see whether a corresponding business process entity exists, further comprising: If a corresponding business process entity exists, based on the process node description in the business process description and the process resources corresponding to the process nodes in the business process entity, searching whether there is a process resource with a higher matching degree than that in the business process entity; If there is a process resource with a higher matching degree than the business process entity, obtain the process resource and accessor with the highest matching degree, and update the resource configuration of the business process entity; If there is no process resource with a higher matching degree than the business process entity, the parameter values ​​required by the business process entity are dynamically extracted from the current business context and a process input parameter value set is formed and passed to the business process entity for execution.

5. The method according to claim 1, wherein The business process description is used to match one or more process resources corresponding to each process node in a pre-built business process resource library, and the identifier of the process resource is dynamically assembled to the process node corresponding to the business process entity, specifically: Obtaining descriptions of multiple process nodes in the business process description; According to the description of each process node, a match is performed in a pre-built process resource library to determine the process resource component that matches each process node, wherein the process resource library includes business application services and program components, wherein the business application services include business services of third-party systems.

6. The method according to claim 1, characterized in that According to the process resource description, the accessor of the process resource is obtained from the pre-built business process resource access framework, and the description information of the process resource scheduler is dynamically configured to the corresponding business process node, specifically: Obtaining each of the process resource call rules from a pre-built business process resource access framework; Dynamically match the corresponding process resource accessor through the process resource calling rules; The description information of the process resource accessor is obtained and configured on the process node of the corresponding business process entity.

7. The method according to claim 1, characterized in that Also includes: When the execution result of the business process entity is not completely consistent with the target execution result, the process input parameter value set is again passed into the business compensation logic defined in the business process to restore the business affected by the operation of the business process entity; Obtain the process configuration that causes inconsistent simulation execution results, including node relationships, parameter settings, execution conditions and conversion rules, and perform dynamic corrections until the simulation run results fully match.

8. A computer-readable storage medium having a program stored thereon, characterized in that: When the program is executed by a processor, the steps in the method according to any one of claims 1 to 7 are implemented.

9. An electronic device comprising a memory, a processor, and a program stored in the memory and executable on the processor, wherein: When the processor executes the program, the steps in the method according to any one of claims 1 to 7 are implemented.