Business process simulation method and device, electronic equipment and readable storage medium

By acquiring and simulating information and failure probabilities of services in business processes, a simulation model is established to determine replacement services. This solves the problems of limited simulation scope and low stability in business processes, and achieves more efficient and accurate simulation results.

CN114756329BActive Publication Date: 2026-07-10INDUSTRIAL AND COMMERCIAL BANK OF CHINA

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
INDUSTRIAL AND COMMERCIAL BANK OF CHINA
Filing Date
2022-04-22
Publication Date
2026-07-10

AI Technical Summary

Technical Problem

Existing technologies for business process simulation have limited application scope and low stability and accuracy.

Method used

By acquiring service information and relationships of multiple services associated with the target business process, and combining the service name, start time, and failure probability information, the information of the replacement service is determined. Based on this information, a business process simulation model is built to simulate the replacement process when the service fails, and the simulation results are obtained to determine whether to execute the business process.

Benefits of technology

It expands the application scope of business process simulation and improves the stability and accuracy of simulation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114756329B_ABST
    Figure CN114756329B_ABST
Patent Text Reader

Abstract

The disclosure provides a business process simulation method and device, electronic equipment and readable storage medium, which can be applied to the technical field of network and the field of finance. The business process simulation method comprises the following steps: acquiring service information of a plurality of services respectively associated with a target business process and an association relationship between the plurality of services; determining service information of a replacement service of each of the plurality of services according to a service name, a start execution time and execution failure probability information in the service information of each of the plurality of services; and simulating the target business process according to the service information of each of the plurality of services, the service information of the replacement service of each of the plurality of services and the association relationship between the plurality of services to obtain a simulation result of the target business process, so as to determine whether to execute the target business process according to the simulation result of the target business process.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the fields of network technology and finance, and more specifically, to a business process simulation method and apparatus, electronic equipment, computer-readable storage medium, and a computer program product. Background Technology

[0002] With the development of Internet and network technologies, various Web services have emerged. The XML (Extensible Markup Language) standard can be used to describe, publish, discover, coordinate, and configure Web services to form business processes.

[0003] In realizing the concept disclosed herein, the inventors discovered at least the following problems in the related technologies: the application scope of business process simulation is limited, and its stability and accuracy are low. Summary of the Invention

[0004] In view of this, the present disclosure provides a business process simulation method and apparatus, electronic device, computer-readable storage medium and computer program product.

[0005] According to one aspect of this disclosure, a business process simulation method is provided, comprising:

[0006] Obtain service information for each of the multiple services associated with the target business process and the relationships between these services;

[0007] Based on the service name, start time, and failure probability information of each of the aforementioned services, determine the service information of the replacement service for each of the aforementioned services; and

[0008] Based on the service information of each of the aforementioned services, the service information of their respective replacement services, and the relationships between the aforementioned services, the target business process is simulated to obtain the simulation results of the target business process, so as to determine whether to execute the target business process based on the simulation results.

[0009] According to embodiments of this disclosure, the simulation of the target business process based on the service information of each of the plurality of services, the service information of the replacement services of each of the plurality of services, and the association relationships between the plurality of services, to obtain the simulation results of the target business process, includes:

[0010] Based on the service information of each of the aforementioned services, the service information of their respective replacement services, and the relationships between the aforementioned services, a business process simulation model is established; and

[0011] Based on the above business process simulation model, the above target business process is simulated, and the simulation results of the above target business process are obtained.

[0012] According to embodiments of this disclosure, the service information of each of the above-mentioned services further includes execution duration information and number of calls, and the service information of the replacement service of each of the above-mentioned services includes the name of the replacement service.

[0013] According to embodiments of this disclosure, establishing a business process simulation model based on the service information of each of the plurality of services, the service information of the replacement services of each of the plurality of services, and the association relationships between the plurality of services includes:

[0014] Based on the above service name, above start execution time, above execution duration information, above execution failure probability information, above number of calls, above replacement service name, and above relationships between multiple services, the above business process simulation model is established.

[0015] According to embodiments of this disclosure, the simulation of the target business process based on the business process simulation model to obtain the simulation results of the target business process includes:

[0016] Based on the relationships between the above services and their respective start times, the above services are sequentially identified as target services.

[0017] Based on the above business process simulation model, the above target service is simulated to obtain the execution time information of the above target service;

[0018] Based on the execution time information of the aforementioned target service, the simulation results of the aforementioned target business process are determined, wherein the simulation results of the aforementioned target business process include the execution time information of the aforementioned target business process.

[0019] According to embodiments of this disclosure, the target service information of the target service includes the target service name, the start time of the target service, the execution failure probability information of the target service, and the number of times the target service is called.

[0020] According to embodiments of this disclosure, the service information for determining the replacement service for each of the plurality of services based on the service name, start time, and execution failure probability information in the service information of each of the plurality of services includes:

[0021] Based on the start time and failure probability information of the target service, the execution status of the target service is determined.

[0022] If the execution status of the aforementioned target service indicates that the target service has failed, determine the execution duration information of the target service.

[0023] If the number of repeated calls to the target service reaches the specified call limit, determine the call duration information of the target service and the name of the replacement service for the target service; and

[0024] Based on the name of the replacement service for the target service, determine the switching duration information and the execution duration information of the replacement service for the target service.

[0025] According to embodiments of this disclosure, the above-mentioned simulation of the target service based on the above-mentioned business process simulation model to obtain the execution time information of the target service includes:

[0026] Based on the execution duration information of the target service, the call duration information of the target service, the switching duration information of the replacement service of the target service, and the execution duration information of the replacement service of the target service, the execution duration information of the target service is determined.

[0027] According to embodiments of this disclosure, determining the execution status of the target service based on the start execution time and execution failure probability information of the target service includes:

[0028] Based on the start time and failure probability information of the target service, generate random numbers within a preset range; and

[0029] Based on the above random number, determine the execution status of the target service.

[0030] According to embodiments of this disclosure, determining whether to execute the target business process based on the simulation results of the target business process includes:

[0031] If the execution time of the aforementioned target business process is less than or equal to a preset threshold, the aforementioned target business process is executed.

[0032] According to embodiments of this disclosure, the above-described business process simulation further includes, before obtaining the service information of each of the multiple services associated with the target business process and the association relationships between the multiple services:

[0033] In response to receiving a simulation request, the aforementioned multiple services in the aforementioned target business process associated with the simulation request are determined based on the simulation request.

[0034] According to another aspect of this disclosure, a business process simulation apparatus is provided, comprising:

[0035] The acquisition module is used to acquire service information of each of the multiple services associated with the target business process and the relationship between the multiple services.

[0036] The first determining module is used to determine the service information of the replacement service for each of the aforementioned services based on the service name information, start time, and execution failure probability information in the service information of each of the aforementioned services; and

[0037] The simulation module is used to simulate the target business process based on the service information of each of the above services, the service information of the replacement services of each of the above services, and the relationship between the above services, so as to obtain the simulation result of the target business process, and determine whether to execute the target business process based on the simulation result of the target business process.

[0038] According to another aspect of this disclosure, an electronic device is provided, comprising:

[0039] One or more processors;

[0040] Memory, used to store one or more instructions.

[0041] When one or more of the above instructions are executed by one or more processors, the one or more processors implement the method described above.

[0042] According to another aspect of this disclosure, a computer-readable storage medium is provided having executable instructions stored thereon, which, when executed by a processor, cause the processor to perform the method described above.

[0043] According to another aspect of this disclosure, a computer program product is provided, which includes computer-executable instructions that, when executed, are used to implement the method described above.

[0044] According to embodiments of this disclosure, a target business process is simulated based on the service information of each of the multiple services, the service information of their respective replacement services, and the relationships between the multiple services, thereby obtaining the simulation result of the target business process. By incorporating execution failure probability information, this technique allows for the simulation of switching to a replacement service in the event of a service call failure, and the simulation result of the target business process under these circumstances is obtained. This enhances simulation capabilities and improves the versatility, stability, and accuracy of business process simulation. Attached Figure Description

[0045] The above and other objects, features and advantages of this disclosure will become clearer from the following description of embodiments with reference to the accompanying drawings, in which:

[0046] Figure 1 This illustration schematically shows a system architecture to which a business process simulation method can be applied according to an embodiment of the present disclosure;

[0047] Figure 2 A flowchart illustrating a business process simulation method according to an embodiment of the present disclosure is shown schematically.

[0048] Figure 3 A flowchart illustrating a method for obtaining simulation results of a target business process according to an embodiment of the present disclosure is shown schematically.

[0049] Figure 4 This illustration schematically shows a flowchart of a method for determining service information of a replacement service according to an embodiment of the present disclosure;

[0050] Figure 5 This illustration schematically shows an example diagram of a business process simulation method according to an embodiment of the present disclosure;

[0051] Figure 6 This illustration schematically shows an example diagram illustrating how execution failure probability information changes over time according to an embodiment of the present disclosure;

[0052] Figure 7 A block diagram of a business process simulation apparatus according to embodiments of the present disclosure is illustrated schematically; and

[0053] Figure 8 A block diagram of an electronic device suitable for implementing a business process simulation method according to an embodiment of the present disclosure is shown schematically. Detailed Implementation

[0054] The embodiments of the present disclosure will now be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the disclosure. In the following detailed description, numerous specific details are set forth to provide a thorough understanding of the embodiments of the present disclosure for ease of explanation. However, it will be apparent that one or more embodiments may be practiced without these specific details. Furthermore, descriptions of well-known structures and techniques are omitted in the following description to avoid unnecessarily obscuring the concepts of the present disclosure.

[0055] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit this disclosure. The terms “comprising,” “including,” etc., as used herein indicate the presence of the stated features, steps, operations, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, or components.

[0056] All terms used herein (including technical and scientific terms) have the meanings commonly understood by those skilled in the art, unless otherwise defined. It should be noted that the terms used herein are to be interpreted in a manner consistent with the context of this specification, and not in an idealized or overly rigid way.

[0057] When using expressions such as "at least one of A, B, and C," the expression should generally be interpreted in accordance with the meaning commonly understood by a person skilled in the art (e.g., "a system having at least one of A, B, and C" should include, but is not limited to, systems having A alone, having B alone, having C alone, having A and B, having A and C, having B and C, and / or having A, B, and C, etc.). Similarly, when using expressions such as "at least one of A, B, or C," the expression should generally be interpreted in accordance with the meaning commonly understood by a person skilled in the art (e.g., "a system having at least one of A, B, or C" should include, but is not limited to, systems having A alone, having B alone, having C alone, having A and B, having A and C, having B and C, and / or having A, B, and C, etc.).

[0058] In the technical solution disclosed herein, the acquisition, storage, and application of user personal information comply with the provisions of relevant laws and regulations, necessary confidentiality measures have been taken, and there is no violation of public order and good morals.

[0059] In the technical solution disclosed herein, the user's authorization or consent is obtained before acquiring or collecting the user's personal information.

[0060] With the development of Internet and network technologies, various Web services have emerged. Web services include services based on programmable web pages. The XML standard can be used to describe, publish, discover, coordinate, and configure Web services to form business processes.

[0061] Business processes can comprise a series of interconnected, structured activities or tasks, which may include a specific web service provided by at least one customer. How to conduct stability assessments for business processes consisting of multiple web services is a pressing issue that needs to be addressed.

[0062] Static simulation is commonly used in related technologies to assess the stability of business processes. In static business process simulation, a set of functionally similar atomic services that can meet business requirements can be selected using QoS (Quality of Service) selection algorithms, and simulation is performed according to the given specific business process sequence.

[0063] However, many business development processes currently utilize distributed frameworks, and as business processes become increasingly complex, interactions between different applications may exist within a single business line. Due to the distributed nature of web services and network volatility, the instability of web services can pose risks to the entire business process.

[0064] In realizing the concept disclosed herein, the inventors discovered at least the following problems in the related technologies: the application scope of business process simulation is limited, and its stability and accuracy are low.

[0065] To at least partially address the technical problems existing in related technologies, this disclosure provides a business process simulation method, apparatus, electronic device, and readable storage medium, which can be applied to the fields of network technology and finance. The business process simulation method includes: acquiring service information of multiple services associated with a target business process and the relationships between these services; determining service information of replacement services for each of the multiple services based on the service name, start time, and execution failure probability information in the service information of each service; and simulating the target business process based on the service information of each service, the service information of the replacement services, and the relationships between the services to obtain the simulation result of the target business process, so as to determine whether to execute the target business process based on the simulation result.

[0066] It should be noted that the business process simulation method and apparatus provided in this disclosure can be used in the fields of network technology and finance, such as for business process simulation in banking. The business process simulation method and apparatus provided in this disclosure can also be used in any field other than network technology and finance, such as for web application development. The application fields of the business process simulation method and apparatus provided in this disclosure are not limited.

[0067] Figure 1 The illustration schematically depicts a system architecture to which a business process simulation method can be applied according to embodiments of this disclosure. It should be noted that... Figure 1 The examples shown are merely examples of system architectures that can be applied to the embodiments of this disclosure, in order to help those skilled in the art understand the technical content of this disclosure, but do not mean that the embodiments of this disclosure cannot be used in other devices, systems, environments or scenarios.

[0068] like Figure 1 As shown, the system architecture 100 according to this embodiment may include terminal devices 101, 102, and 103, a network 104, and a server 105. The network 104 serves as a medium for providing a communication link between the terminal devices 101, 102, and 103 and the server 105. The network 104 may include various connection types, such as wired and / or wireless communication links, etc.

[0069] Users can use terminal devices 101, 102, and 103 to interact with server 105 via network 104 to receive or send messages, etc. Various communication client applications can be installed on terminal devices 101, 102, and 103, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, and / or social platform software, etc. (for example only).

[0070] Terminal devices 101, 102, and 103 can be various electronic devices with displays and web browsing capabilities, including but not limited to smartphones, tablets, laptops, and desktop computers.

[0071] Server 105 can be a server that provides various services, such as a backend management server that supports websites browsed by users using terminal devices 101, 102, and 103 (for example only). The backend management server can analyze and process data such as received user requests, and feed back the processing results (such as web pages, information, or data obtained or generated according to user requests) to the terminal devices.

[0072] It should be noted that the business process simulation method provided in this embodiment can generally be executed by server 105. Correspondingly, the business process simulation device provided in this embodiment can generally be located in server 105. The business process simulation method provided in this embodiment can also be executed by a server or server cluster that is different from server 105 and capable of communicating with terminal devices 101, 102, 103 and / or server 105. Correspondingly, the business process simulation device provided in this embodiment can also be located in a server or server cluster that is different from server 105 and capable of communicating with terminal devices 101, 102, 103 and / or server 105. Alternatively, the business process simulation method provided in this embodiment can also be executed by terminal devices 101, 102, or 103, or by other terminal devices different from terminal devices 101, 102, or 103. Accordingly, the business process simulation device provided in this embodiment of the present disclosure may also be set in terminal device 101, 102, or 103, or in other terminal devices different from terminal device 101, 102, or 103.

[0073] It should be understood that Figure 1 The number of terminal devices, networks, and servers shown is merely illustrative. Depending on implementation needs, any number of terminal devices, networks, and servers can be included.

[0074] Figure 2 A flowchart illustrating a business process simulation method according to an embodiment of the present disclosure is shown schematically.

[0075] like Figure 2 As shown, the business process simulation method includes operations S210 to S230.

[0076] In operation S210, service information of each of the multiple services associated with the target business process and the relationships between the multiple services are obtained.

[0077] In operation S220, based on the service name, start time, and failure probability information of each of the multiple services, the service information of the replacement service for each of the multiple services is determined.

[0078] In operation S230, the target business process is simulated based on the service information of each of the multiple services, the service information of the replacement services of each of the multiple services, and the relationship between the multiple services. The simulation result of the target business process is obtained so as to determine whether to execute the target business process.

[0079] According to embodiments of this disclosure, the target business process may include a business process to be simulated. This target business process may include multiple services. By simulating the target business process, the execution of the target business process can be determined based on the simulation results, thereby achieving the design of the target business process.

[0080] According to embodiments of this disclosure, multiple services associated with a target business process can also be invoked by other business processes. These multiple services may include, for example, atomic services. An atom is a basic service unit that constitutes an application and is also the smallest unit that the operating system can manage and allocate permissions to.

[0081] According to embodiments of this disclosure, the association between multiple services may include, for example, the name of a service that has a prerequisite relationship with a certain service. For example, if a target business process can sequentially call services A, B, C, and D, then service C has a prerequisite relationship with service D, service B has a prerequisite relationship with service C, and service A has a prerequisite relationship with service B.

[0082] According to embodiments of this disclosure, the execution failure probability information may include a probability distribution function of errors occurring during service execution. The execution failure probability information can be used to characterize the probability of successful service call, the relationship between the time point of service call error and probability, etc.

[0083] According to embodiments of this disclosure, the alternative services for each of the multiple services may include a backup service to be switched in case a call to a certain service fails. For example, a target business process may sequentially call services A, B, C, and D. If a call to service B fails, the alternative service B' can be switched to. In this case, the target business process may sequentially call services A, B', C, and D.

[0084] According to embodiments of this disclosure, the simulation status of the target business process can be determined based on the simulation results, and further, it can be determined whether to execute the target business process.

[0085] According to embodiments of this disclosure, a target business process is simulated based on the service information of each of the multiple services, the service information of their respective replacement services, and the relationships between the multiple services, thereby obtaining the simulation result of the target business process. By incorporating execution failure probability information, this technique allows for the simulation of switching to a replacement service in the event of a service call failure, and the simulation result of the target business process under these circumstances is obtained. This enhances simulation capabilities and improves the versatility, stability, and accuracy of business process simulation.

[0086] The following is for reference. Figures 3-6 In conjunction with specific embodiments, Figure 2 The method shown will be further explained.

[0087] According to embodiments of this disclosure, the business process simulation method may further include the following operations.

[0088] In response to receiving a simulation request, multiple services in the target business process associated with the simulation request are identified based on the simulation request.

[0089] According to embodiments of this disclosure, a simulation request can be a request message sent by a user to a server through a client. The simulation request may include business simulation information of the target business process to be simulated. Based on the simulation request, a service pool that the target business process may call during the simulation can be established. The service pool S can be represented as S = {S1, S2, S3, ...}, where S1, S2, S3, etc., can represent multiple services in the target business process.

[0090] Figure 3 A flowchart illustrating a method for obtaining simulation results of a target business process according to an embodiment of the present disclosure is shown.

[0091] like Figure 3 As shown, operation S230 may include operations S331 to S332.

[0092] In operation S331, a business process simulation model is established based on the service information of each of the multiple services, the service information of the replacement services of each of the multiple services, and the relationship between the multiple services.

[0093] When operating S332, the target business process is simulated based on the business process simulation model to obtain the simulation results of the target business process.

[0094] According to embodiments of this disclosure, the service information of each of the multiple services further includes execution duration information and number of calls, and the service information of the replacement service of each of the multiple services includes the name of the replacement service.

[0095] According to embodiments of this disclosure, operation S331 may include the following operations.

[0096] A business process simulation model is established based on service name, start time, execution duration, failure probability, number of calls, replacement service name, and the relationships between multiple services.

[0097] According to the embodiments of this disclosure, multiple services such as service S1, service S2, and service S3 in service pool S can be modeled, and the business process simulation model can be used as shown in the following formula (1).

[0098] Serwce={StartTime,ExeTime,SuccessProbablityFuc,PreService,ChangeService,RetryTimes}(1)

[0099] Among them, StartTime represents the start time of the service execution, ExeTime represents the execution duration of the service, SuccessProbablityFuc represents the failure probability of the service during execution, PreService represents the name of the service that has a preceding relationship with this service, ChangeService represents the name of the replacement service of this service, RetryTimes represents the number of times the service is called, and PreService and ChangeService both belong to service pool S.

[0100] According to embodiments of this disclosure, operation S332 may include the following operations.

[0101] Based on the relationships between multiple services and their respective start times, these services are sequentially identified as target services. A business process simulation model is used to simulate the target services, obtaining their execution duration information. Based on this execution duration information, the simulation result of the target business process is determined, including the execution duration information of the target business process.

[0102] According to embodiments of this disclosure, before starting the simulation of the target business process, the service to be executed in the current time slice can be selected based on the relationships between multiple services and the start times of each service.

[0103] For example, if the target business process can call services A, B, C and D in sequence, with the start execution time of service A being T1, service B being T2, service C being T3 and service D being T4, and the current time slice being T0, and 0 < T1 < T2 < T0 < T3 < T4, then service B can be identified as the target service.

[0104] According to embodiments of this disclosure, the execution duration information of each of the multiple services can be determined sequentially, and the execution duration information of the target business process can be determined based on the execution duration information of each service.

[0105] According to embodiments of this disclosure, a business process simulation model is established based on the service information of each of the multiple services, the service information of their respective replacement services, and the relationships between the multiple services. The target business process is then simulated based on this simulation model to obtain the simulation results. Through these technical means, multiple services associated with a target business process can be modeled and simulated, expanding the application scope of business process simulation and improving its efficiency.

[0106] Figure 4 A flowchart illustrating a method for determining service information of a replacement service according to an embodiment of the present disclosure is shown.

[0107] Figure 5 The illustration shows an example schematic diagram of a business process simulation method according to an embodiment of the present disclosure.

[0108] like Figure 4 As shown, operation S220 may include operations S421 to S424.

[0109] In operation S421, the execution status of the target service is determined based on the start time of the target service and the failure probability information of the target service.

[0110] In operation S422, if the execution status of the target service indicates that the target service has failed, the execution duration information of the target service is determined.

[0111] In operation S423, if the number of times the target service is repeatedly called reaches the target service's call limit, the call duration information of the target service and the replacement service name of the target service are determined.

[0112] In operation S424, based on the name of the replacement service for the target service, the switching duration information and the execution duration information of the replacement service for the target service are determined.

[0113] According to embodiments of this disclosure, the target service information includes the target service name, the start time of the target service, the execution failure probability information of the target service, and the number of times the target service is called.

[0114] According to embodiments of this disclosure, the execution status of a target service can be used to characterize whether the target service was executed successfully. If the execution status of a target service indicates that the target service was executed successfully, the next target service can be determined.

[0115] According to embodiments of this disclosure, if the execution status of the target service indicates that the target service has failed, the target service can be invoked again. If the number of repeated invocations of the target service reaches the designated invocation limit for the target service, a replacement service for the target service can be determined.

[0116] According to embodiments of this disclosure, operation S332 may further include the following operations.

[0117] The execution duration information of the target service is determined based on the execution duration information of the target service, the call duration information of the target service, the switching duration information of the target service's replacement service, and the execution duration information of the target service's replacement service.

[0118] According to embodiments of this disclosure, a target service may correspond to multiple alternative services. Multiple alternative services can be sorted according to the failure probability information of the alternative services. In the event of a failure in calling the target service, an alternative service with a lower failure probability and higher stability is selected first.

[0119] For example, the target business process may call services A, B, C, and D sequentially. Based on the failure probability information of the replacement services, these services can be ordered as follows: replacement services for service A include A1, A2, and A3. If service A fails, service A1 can be called first. If service A1 fails, service A2 can be called next. If service A2 fails, service A3 can be called next. If service A3 succeeds, service B can then be called.

[0120] According to the embodiments of this disclosure, the specific order of calling the replacement service can be flexibly set by those skilled in the art based on the actual application situation. The embodiments of this disclosure do not limit the specific order of calling the replacement service.

[0121] According to embodiments of this disclosure, operation S230 may further include the following operations.

[0122] If the execution time of the target business process is less than or equal to a preset threshold, the target business process is executed.

[0123] like Figure 5 As shown, if the execution status of the target service indicates that the target service has failed, the execution duration information 501 of the target service can be determined. If the number of repeated calls to the target service reaches the target service's call limit, the call duration information 502 of the target service and the name of the alternative service can be determined. Based on the name of the alternative service, the switching duration information 503 and the execution duration information 504 of the alternative service can be determined.

[0124] According to the embodiments of this disclosure, pt can be used to represent the execution duration information 501 of the target service, tt can be used to represent the call duration information 502 of the target service, ST can be used to represent the switching duration information 503 of the replacement service of the target service, and at can be used to represent the execution duration information 504 of the replacement service of the target service. Then, the execution duration information WT1 of the target service can be represented by the following formula (2).

[0125] WT1=pt+tt+ST+at (2)

[0126] According to embodiments of this disclosure, multiple services can be sequentially identified as target services, each target service can be simulated to obtain execution time information for each target service, and the execution time information WT of the target service can be determined based on the execution time information WT1, WT2, WT3, etc. of each target service.

[0127] According to embodiments of this disclosure, the decision to execute a target business process can be determined based on the numerical relationship between the execution duration information (WT) of the target service and a preset threshold. If the execution duration information of the target business process is less than or equal to the preset threshold, it indicates that the target business process simulation was successful and the target business process can be executed. If the execution duration information of the target business process is greater than the preset threshold, it indicates that the target business process poses a risk and can be redesigned.

[0128] According to the embodiments of this disclosure, the preset threshold can be flexibly set by those skilled in the art based on the actual application situation, and the embodiments of this disclosure do not limit the preset threshold.

[0129] According to embodiments of this disclosure, the execution duration information WT1, WT2, WT3, etc. of each target service can be summarized and displayed.

[0130] Figure 6 An example schematic diagram illustrating how execution failure probability information changes over time according to an embodiment of the present disclosure.

[0131] According to embodiments of this disclosure, during execution, the service may perform different actions, and different actions may result in different probabilities of failure.

[0132] like Figure 6 As shown, at time t1, the service performed a relatively safe action, so the failure probability P1 was low. At time t2, the service performed a higher-risk action, so the failure probability P2 was high.

[0133] According to embodiments of this disclosure, since some services may be unreachable at the start of the call, the failure probability P3 is relatively high at time t=0. At time t3, the service call ends, and therefore the failure probability is 0.

[0134] According to embodiments of this disclosure, operation S421 may include the following operations.

[0135] Based on the start time and failure probability information of the target service, a random number within a preset range is generated. The execution status of the target service is then determined based on the random number.

[0136] According to embodiments of this disclosure, in each simulation time slice, random numbers within a preset range can be generated based on the start execution time of the target service and the execution failure probability information of the target service, in order to simulate the situation where the system may fail to execute in a real environment.

[0137] According to the embodiments of this disclosure, the preset range can be flexibly set by those skilled in the art based on the actual application situation, and the embodiments of this disclosure do not limit the preset range.

[0138] According to embodiments of this disclosure, after simulation, simulation information of the business process can be recorded, such as whether the business process has been completed, whether the execution has timed out, and the execution status of each service. Since introducing execution failure probability information usually introduces many uncertainties into a single simulation, multiple simulations can be performed, making the simulation results obtained from multiple simulations closer to the actual scenario.

[0139] According to embodiments of this disclosure, the execution duration information of the target service is determined based on the execution duration information of the target service, the call duration information of the target service, the switching duration information of the replacement service of the target service, and the execution duration information of the replacement service of the target service. This facilitates the subsequent determination of the simulation results of the target business process. By introducing execution failure probability information, the probability of a service successfully being called and the relationship between the time point of error and probability can be simulated using probabilistic methods. Therefore, it is possible to simulate the simulation process of switching to a replacement service in the event of a service call failure, thereby expanding the application scope of business process simulation and improving its stability and accuracy.

[0140] Figure 7 A block diagram of a business process simulation apparatus according to an embodiment of the present disclosure is shown schematically.

[0141] like Figure 7 As shown, the business process simulation device 700 includes an acquisition module 701, a first determination module 702, and a simulation module 703.

[0142] The acquisition module 701 is used to acquire service information of each of the multiple services associated with the target business process and the relationship between the multiple services.

[0143] The first determining module 702 is used to determine the service information of the replacement service for each of the multiple services based on the service name information, start time and execution failure probability information in the service information of each of the multiple services.

[0144] The simulation module 703 is used to simulate the target business process based on the service information of each of the multiple services, the service information of the replacement services of each of the multiple services, and the relationship between the multiple services, so as to obtain the simulation result of the target business process and determine whether to execute the target business process based on the simulation result of the target business process.

[0145] According to embodiments of this disclosure, simulation module 703 includes a modeling unit and a simulation unit.

[0146] The modeling unit is used to build a business process simulation model based on the service information of each of the multiple services, the service information of the replacement services of each of the multiple services, and the relationships between the multiple services.

[0147] The simulation unit is used to simulate the target business process based on the business process simulation model and obtain the simulation results of the target business process.

[0148] According to embodiments of this disclosure, the service information of each of the multiple services further includes execution duration information and number of calls, and the service information of the replacement service of each of the multiple services includes the name of the replacement service.

[0149] According to embodiments of this disclosure, the modeling unit includes a modeling subunit.

[0150] The modeling subunit is used to build a business process simulation model based on service name, start execution time, execution duration information, execution failure probability information, number of calls, replacement service name, and the relationship between multiple services.

[0151] According to embodiments of this disclosure, the simulation unit includes a first determination subunit, a simulation subunit, and a second determination subunit.

[0152] The first determining subunit is used to determine multiple services as target services in sequence based on the association between multiple services and the start execution time of each service.

[0153] The simulation subunit is used to simulate the target service based on the business process simulation model to obtain the execution time information of the target service.

[0154] The second determining subunit is used to determine the simulation result of the target business process based on the execution duration information of the target service, wherein the simulation result of the target business process includes the execution duration information of the target business process.

[0155] According to embodiments of this disclosure, the target service information includes the target service name, the start time of the target service, the execution failure probability information of the target service, and the number of times the target service is called.

[0156] According to embodiments of this disclosure, the first determining module 702 includes a first determining unit, a second determining unit, a third determining unit, and a fourth determining unit.

[0157] The first determining unit is used to determine the execution status of the target service based on the start execution time and the execution failure probability information of the target service.

[0158] The second determining unit is used to determine the execution duration information of the target service when the execution status of the target service indicates that the target service has failed.

[0159] The third determining unit is used to determine the call duration information of the target service and the alternative service name of the target service when the number of repeated calls to the target service reaches the target service call limit.

[0160] The fourth determining unit is used to determine the switching duration information and the execution duration information of the replacement service of the target service based on the replacement service name of the target service.

[0161] According to embodiments of this disclosure, the simulation unit further includes a third determining subunit.

[0162] The third determining subunit is used to determine the execution duration information of the target service based on the execution duration information of the target service, the call duration information of the target service, the switching duration information of the replacement service of the target service, and the execution duration information of the replacement service of the target service.

[0163] According to embodiments of this disclosure, the first determining unit includes a generating subunit and a fourth determining subunit.

[0164] The generation sub-unit is used to generate random numbers within a preset range based on the start time and failure probability information of the target service.

[0165] The fourth determination subunit is used to determine the execution status of the target service based on a random number.

[0166] According to embodiments of this disclosure, the simulation module 703 further includes an execution unit.

[0167] The execution unit is used to execute the target business process in response to the execution time information of the target business process being less than or equal to a preset threshold.

[0168] According to embodiments of this disclosure, the business process simulation apparatus 700 further includes a second determining module.

[0169] The second determination module is used to, in response to receiving a simulation request, determine multiple services in the target business process associated with the simulation request.

[0170] Any one or more of the modules, submodules, units, and subunits according to embodiments of the present disclosure, or at least part of the functions of any one or more of them, can be implemented in one module. Any one or more of the modules, submodules, units, and subunits according to embodiments of the present disclosure can be implemented by dividing them into multiple modules. Any one or more of the modules, submodules, units, and subunits according to embodiments of the present disclosure can be at least partially implemented as hardware circuitry, such as Field Programmable Gate Arrays (FPGAs), Programmable Logic Arrays (PLAs), Systems-on-Chip, Systems-on-Substrate, Systems-on-Package, Application-Specific Integrated Circuits (ASICs), or implemented in hardware or firmware by any other reasonable means of integrating or packaging circuitry, or implemented in software, hardware, or firmware, or in any suitable combination of any of these three implementation methods. Alternatively, one or more of the modules, submodules, units, and subunits according to embodiments of the present disclosure can be at least partially implemented as computer program modules, which, when run, can perform corresponding functions.

[0171] For example, any plurality of the acquisition module 701, the first determination module 702, and the simulation module 703 can be combined into one module / unit / subunit, or any one of these modules / units / subunits can be split into multiple modules / units / subunits. Alternatively, at least part of the functionality of one or more of these modules / units / subunits can be combined with at least part of the functionality of other modules / units / subunits and implemented in one module / unit / subunit. According to embodiments of this disclosure, at least one of the acquisition module 701, the first determination module 702, and the simulation module 703 can be at least partially implemented as hardware circuitry, such as a field-programmable gate array (FPGA), a programmable logic array (PLA), a system-on-a-chip, a system-on-a-substrate, a system-on-package, an application-specific integrated circuit (ASIC), or any other reasonable means of integrating or packaging the circuitry, or implemented in any one of the three methods of software, hardware, and firmware, or in a suitable combination of any of these. Alternatively, at least one of the acquisition module 701, the first determination module 702, and the simulation module 703 may be implemented at least partially as a computer program module, which can perform corresponding functions when the computer program module is run.

[0172] It should be noted that the business process simulation device part in the embodiments of this disclosure corresponds to the business process simulation method part in the embodiments of this disclosure. For a detailed description of the business process simulation device part, please refer to the business process simulation method part, which will not be repeated here.

[0173] Figure 8A block diagram of an electronic device suitable for implementing a business process simulation method according to an embodiment of the present disclosure is shown schematically. Figure 8 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of the embodiments disclosed herein.

[0174] like Figure 8 As shown, a computer electronic device 800 according to an embodiment of the present disclosure includes a processor 801, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 802 or a program loaded from a storage portion 808 into a random access memory (RAM) 803. The processor 801 may include, for example, a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or an associated chipset and / or a special-purpose microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 801 may also include onboard memory for caching purposes. The processor 801 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present disclosure.

[0175] RAM 803 stores various programs and data required for the operation of electronic device 800. Processor 801, ROM 802, and RAM 803 are interconnected via bus 804. Processor 801 performs various operations of the method flow according to embodiments of the present disclosure by executing programs in ROM 802 and / or RAM 803. It should be noted that the programs may also be stored in one or more memories other than ROM 802 and RAM 803. Processor 801 may also perform various operations of the method flow according to embodiments of the present disclosure by executing programs stored in said one or more memories.

[0176] According to embodiments of this disclosure, the electronic device 800 may further include an input / output (I / O) interface 805, which is also connected to a bus 804. The electronic device 800 may also include one or more of the following components connected to the I / O interface 805: an input section 806 including a keyboard, mouse, etc.; an output section 807 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 808 including a hard disk, etc.; and a communication section 809 including a network interface card such as a LAN card, modem, etc. The communication section 809 performs communication processing via a network such as the Internet. A drive 810 is also connected to the I / O interface 805 as needed. A removable medium 811, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on the drive 810 as needed so that computer programs read from it can be installed into the storage section 808 as needed.

[0177] According to embodiments of this disclosure, the method flow according to embodiments of this disclosure can be implemented as a computer software program. For example, embodiments of this disclosure include a computer program product comprising a computer program carried on a computer-readable storage medium, the computer program containing program code for performing the methods shown in the flowchart. In such embodiments, the computer program can be downloaded and installed from a network via communication section 809, and / or installed from removable medium 811. When the computer program is executed by processor 801, it performs the functions defined in the system of embodiments of this disclosure. According to embodiments of this disclosure, the systems, devices, apparatuses, modules, units, etc., described above can be implemented by computer program modules.

[0178] This disclosure also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or it may exist independently and not assembled into the device / apparatus / system. The computer-readable storage medium carries one or more programs that, when executed, implement the method according to the embodiments of this disclosure.

[0179] According to embodiments of this disclosure, the computer-readable storage medium can be a non-volatile computer-readable storage medium. Examples include, but are not limited to: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this disclosure, the computer-readable storage medium can be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.

[0180] For example, according to embodiments of this disclosure, a computer-readable storage medium may include the ROM 802 and / or RAM 803 described above and / or one or more memories other than ROM 802 and RAM 803.

[0181] Embodiments of this disclosure also include a computer program product comprising a computer program containing program code for performing the methods provided in the embodiments of this disclosure. When the computer program product is run on an electronic device, the program code is used to enable the electronic device to implement the business process simulation method provided in the embodiments of this disclosure.

[0182] When the computer program is executed by the processor 801, it performs the functions defined in the system / apparatus of this disclosure embodiments. According to embodiments of this disclosure, the systems, apparatuses, modules, units, etc., described above can be implemented by computer program modules.

[0183] In one embodiment, the computer program may rely on a tangible storage medium such as an optical storage device or a magnetic storage device. In another embodiment, the computer program may also be transmitted and distributed in the form of signals over a network medium, and may be downloaded and installed via the communication section 809, and / or installed from a removable medium 811. The program code contained in the computer program can be transmitted using any suitable network medium, including but not limited to: wireless, wired, etc., or any suitable combination thereof.

[0184] According to embodiments of this disclosure, program code for executing the computer programs provided in embodiments of this disclosure can be written in any combination of one or more programming languages. Specifically, these computational programs can be implemented using high-level procedural and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages ​​include, but are not limited to, languages ​​such as Java, C++, Python, "C", or similar programming languages. The program code can execute entirely on the user's computing device, partially on the user's device, partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).

[0185] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions. Those skilled in the art will understand that the features recited in the various embodiments and / or claims of this disclosure can be combined and / or combined in various ways, even if such combinations or combinations are not expressly described in this disclosure. In particular, the features described in the various embodiments and / or claims of this disclosure may be combined and / or combined in various ways without departing from the spirit and teachings of this disclosure. All such combinations and / or combinations fall within the scope of this disclosure.

[0186] The embodiments of this disclosure have been described above. However, these embodiments are for illustrative purposes only and are not intended to limit the scope of this disclosure. Although various embodiments have been described above, this does not mean that the measures in the various embodiments cannot be used advantageously in combination. The scope of this disclosure is defined by the appended claims and their equivalents. Various substitutions and modifications can be made by those skilled in the art without departing from the scope of this disclosure, and all such substitutions and modifications should fall within the scope of this disclosure.

Claims

1. A business process simulation method, comprising: Obtain service information for each of the multiple services associated with the target business process and the relationships between the multiple services; Based on the relationships between the multiple services and the start time of each of the multiple services, the multiple services are sequentially identified as target services. The target service information of the target service includes the target service name, the target service start time, the target service execution failure probability information, and the number of times the target service is called. The execution status of the target service is determined based on the start time of the target service and the execution failure probability information of the target service. If the execution status of the target service indicates that the target service has failed, determine the execution duration information of the target service; If the number of times the target service is repeatedly called reaches the required number of times the target service can be called, the call duration information of the target service and the alternative service name of the target service are determined. Based on the name of the replacement service for the target service, determine the switching duration information and the execution duration information of the replacement service for the target service; A business process simulation model is established based on the service information of each of the multiple services, the service information of each of the multiple services' replacement services, and the relationships between the multiple services. The execution duration information of the target service is determined based on the execution duration information of the target service, the call duration information of the target service, the switching duration information of the replacement service of the target service, and the execution duration information of the replacement service of the target service. as well as Based on the execution duration information of the target service, the simulation result of the target business process is determined, so as to determine whether to execute the target business process based on the simulation result of the target business process, wherein the simulation result of the target business process includes the execution duration information of the target business process.

2. The method according to claim 1, wherein, The service information of each of the multiple services also includes execution duration information and number of calls, and the service information of the replacement service of each of the multiple services includes the name of the replacement service; The step of establishing a business process simulation model based on the service information of each of the multiple services, the service information of the replacement services of each of the multiple services, and the association relationships between the multiple services includes: The business process simulation model is established based on the service name, the start execution time, the execution duration information, the execution failure probability information, the number of calls, the replacement service name, and the association relationship between the multiple services.

3. The method according to claim 1, wherein, Determining the execution status of the target service based on its start time and execution failure probability information includes: Based on the start time and failure probability information of the target service, generate random numbers within a preset range; and The execution status of the target service is determined based on the random number.

4. The method according to any one of claims 1 to 3, wherein determining whether to execute the target business process based on the simulation results of the target business process comprises: If the execution time of the target business process is less than or equal to a preset threshold, the target business process is executed.

5. The method according to claim 1, further comprising, before obtaining the service information of each of the plurality of services associated with the target business process and the association relationship between the plurality of services: In response to receiving a simulation request, the plurality of services in the target business process associated with the simulation request are determined based on the simulation request.

6. A business process simulation device, comprising: The acquisition module is used to acquire service information of each of the multiple services associated with the target business process and the relationship between the multiple services; The first determining subunit is used to determine the multiple services as target services in sequence according to the association between the multiple services and the start execution time of each of the multiple services. The target service information of the target service includes the target service name, the start execution time of the target service, the execution failure probability information of the target service, and the number of times the target service is called. The first determining unit is configured to determine the execution status of the target service based on the start execution time of the target service and the execution failure probability information of the target service; The second determining unit is used to determine the execution duration information of the target service when the execution status of the target service indicates that the target service has failed. The third determining unit is used to determine the call duration information of the target service and the alternative service name of the target service when the number of times the target service is repeatedly called reaches the number of times the target service is called. The fourth determining unit is used to determine the switching duration information and the execution duration information of the replacement service of the target service based on the replacement service name of the target service. The modeling unit is used to establish a business process simulation model based on the service information of each of the multiple services, the service information of each of the multiple services' replacement services, and the association relationship between the multiple services. The third determining subunit is used to determine the execution duration information of the target service based on the execution duration information of the target service, the call duration information of the target service, the switching duration information of the replacement service of the target service, and the execution duration information of the replacement service of the target service. as well as The second determining subunit is used to determine the simulation result of the target business process based on the execution duration information of the target service, so as to determine whether to execute the target business process based on the simulation result of the target business process, wherein the simulation result of the target business process includes the execution duration information of the target business process.

7. An electronic device, comprising: One or more processors; Memory, used to store one or more instructions. When the one or more instructions are executed by the one or more processors, the one or more processors cause the one or more processors to implement the method of any one of claims 1 to 5.

8. A computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, cause the processor to perform the method of any one of claims 1 to 5.

9. A computer program product comprising computer-executable instructions, which, when executed, are used to implement the method of any one of claims 1 to 5.