Computer system and business flow search method

The described system quickly identifies matching business flows by using a directed graph database and node-flow correspondence, addressing inefficiencies in conventional search methods by reducing search space and computation time.

JP2025114152AActive Publication Date: 2025-08-05HITACHI LTD
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
JP2024008653
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-01-24
Publication Date
2025-08-05
Estimated Expiration
2044-01-24

AI Technical Summary

Technical Problem

Conventional techniques for searching business flows face large search spaces and time-consuming calculations, especially when dealing with multiple workflows, and even similarity-based methods are inefficient.

Method used

A computer system with a first database managing a directed graph of tasks and a second database for node-flow correspondence, allowing quick identification of candidate workflows that match a specified search workflow by generating node pairs and utilizing these databases to narrow down search results.

Benefits of technology

Enables rapid and efficient searching for business flows that meet specified conditions, reducing the time and computational effort required compared to traditional methods.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025114152000001_ABST
    Figure 2025114152000001_ABST
Patent Text Reader

Abstract

To provide a computer system and a method that quickly searches for a business flow that matches a specified condition from among a plurality of business flows.SOLUTION: A computer system comprises the steps of: representing a business flow that defines task sequence; retaining a first database for managing a directed graph consisting of a node representing a task and a directed edge connecting nodes in accordance with task sequence, and a second database for managing correspondence between the nodes and the business flow; receiving a search request including a search business flow represented as the directed graph; generating a node pair that constitutes the search business flow, the node pair being a pair in which a sequence relationship between the nodes in the search business flow is specified; referring to the second database to identify a candidate business flow that includes all of the nodes that constitute the search business flow; and referring to the first database to search for a candidate business flow that includes all of the generated node pairs from among the candidate business flows.SELECTED DRAWING: Figure 16
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a search technique in a system that manages data used to analyze work performed according to a work flow. [Background technology]

[0002] In the production of products or materials and in administrative procedures, some tasks are performed according to a workflow that defines the order of tasks. To improve the efficiency of business operations, it is important to optimize the selection of tasks to be performed and the order in which they are performed.

[0003] A workflow can be represented as a directed graph consisting of nodes representing tasks and directed edges connecting the nodes in the order of tasks. In an environment where tasks are executed according to various workflows, useful information can be obtained by analyzing the results of each workflow. Conventionally, users have had to manually select the workflow to analyze. However, when there are a large number of workflows, the cost required to select a workflow becomes high. To address this issue, the technologies described in Patent Documents 1 and 2 are known.

[0004] Patent Document 1 discloses a technology in which "when searching for a part isomorphic with a query graph, which is the graph of the query used for the search, from a data graph, which is the graph of the data to be searched, among graphs consisting of labeled vertices and edges connecting adjacent vertices, a set of combinations of vertices of the query graph and vertices of the data graph is extracted as a failure pattern representing the cause of the search failure based on search failures that occur during the search process, and the search state that matches the failure pattern is pruned to search for a part isomorphic with the query graph from the data graph."

[0005] Patent Document 2 discloses a technology that "accepts a business flow as a search condition and searches for business flows that match or are similar to the accepted business flow. When searching for a business flow, input of the business flow to be used as the search condition is accepted, and based on the degree of match between the search condition and the combination of each individual task contained in the business flow to be searched and the actor that performs that individual task, the similarity of the business flow compared to the business flow used as the search condition is calculated, and search results are presented based on the calculated individual similarities." [Prior art documents] [Patent documents]

[0006] [Patent Document 1] Japanese Patent Application Publication No. 2019-101610 [Patent Document 2] Japanese Patent Application Laid-Open No. 2012-243268 Summary of the Invention [Problem to be solved by the invention]

[0007] In an environment where business processes are executed according to various workflows, useful information can be obtained by analyzing the results of each workflow. Because workflows are expressed as directed graphs that take order into account, conventional techniques have the problem of a large search space and time-consuming searches when searching for workflows. Furthermore, even in techniques that limit the search space using similarity, there is the problem of time-consuming calculations of similarity.

[0008] An object of the present invention is to provide a technology for quickly searching for a business flow that matches a condition from among a plurality of business flows. [Means for solving the problem]

[0009] A representative example of the invention disclosed in this application is as follows: That is, a computer system including a processor, a storage device connected to the processor, and a network interface connected to the processor, the computer system holds a first database for managing a directed graph representing a workflow defining the procedures of a plurality of tasks and consisting of nodes representing the tasks and directed edges connecting the nodes in accordance with the task order, and a second database for managing the correspondence between the nodes and the workflow, the computer system receives a search request including a search workflow expressed as a directed graph consisting of at least two of the nodes, generates first node pairs that are pairs of the nodes that constitute the search workflow and specify the order of the nodes in the search workflow, refers to the second database to identify as candidate workflows those workflows that include all of the nodes that constitute the search workflow, refers to the first database to search from among the candidate workflows for candidate workflows that include all of the generated first node pairs, and outputs the search results. [Effects of the Invention]

[0010] According to the present invention, it is possible to quickly search for a business flow that matches a specified condition. Problems, configurations, and effects other than those described above will become apparent from the following description of the embodiment. [Brief explanation of the drawings]

[0011] [Figure 1] FIG. 1 illustrates an example of a system configuration according to a first embodiment. [Figure 2] 1 illustrates an example of a configuration of a business data collection device according to a first embodiment. [Figure 3] FIG. 2 illustrates an example of a configuration of a business data management server according to the first embodiment. [Figure 4] FIG. 2 is a diagram illustrating an example of a data structure of data stored in a business data DB according to the first embodiment. [Figure 5A] FIG. 2 is a diagram illustrating an example of a data structure of data stored in a business flow DB according to the first embodiment. [Figure 5B] FIG. 2 is a diagram illustrating an example of a data structure of data stored in a business flow DB according to the first embodiment. [Figure 6] FIG. 10 is a diagram illustrating an example of a data structure of data stored in a node / business flow correspondence management DB according to the first embodiment. [Figure 7A] FIG. 2 is a diagram illustrating an example of a data structure of data stored in an integrated business flow DB according to the first embodiment. [Figure 7B] FIG. 2 is a diagram illustrating an example of a data structure of data stored in an integrated business flow DB according to the first embodiment. [Figure 7C] FIG. 2 is a diagram illustrating an example of a data structure of data stored in an integrated business flow DB according to the first embodiment. [Figure 8A] FIG. 10 is a diagram illustrating an example of an integrated business flow generated by a business data management server according to the first embodiment. [Figure 8B] FIG. 10 is a diagram illustrating an example of an integrated business flow generated by a business data management server according to the first embodiment. [Figure 9] FIG. 10 is a sequence diagram illustrating a flow of a search process for a business flow in the system according to the first embodiment. [Figure 10] FIG. 10 is a diagram illustrating an example of a screen presented by a business data management server according to the first embodiment. [Figure 11] FIG. 10 is a diagram illustrating an example of a screen presented by a business data management server according to the first embodiment. [Figure 12] FIG. 10 is a diagram illustrating an example of a screen presented by a business data management server according to the first embodiment. [Figure 13] FIG. 10 is a diagram illustrating an example of a screen presented by a business data management server according to the first embodiment. [Figure 14] FIG. 10 is a diagram illustrating an example of a screen presented by a business data management server according to the first embodiment. [Figure 15] FIG. 10 is a diagram illustrating an example of a screen presented by a business data management server according to the first embodiment. [Figure 16] 10 is a flowchart illustrating an example of a business flow search process executed by a business data management server according to the first embodiment. [Figure 17]10 is a flowchart illustrating an example of a business flow search process executed by a business data management server according to a second embodiment. [Figure 18] FIG. 11 is a diagram illustrating an example of a screen presented by a business data management server according to a third embodiment. [Figure 19] FIG. 11 is a diagram illustrating an example of a screen presented by a business data management server according to a third embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0012] Hereinafter, embodiments of the present invention will be described with reference to the drawings. However, the present invention should not be construed as being limited to the description of the embodiments shown below. Those skilled in the art will readily understand that the specific configuration can be changed without departing from the spirit or intent of the present invention.

[0013] In the configuration of the invention described below, the same or similar configurations or functions are denoted by the same reference numerals, and redundant explanations will be omitted.

[0014] In this specification, the terms "first," "second," "third," etc. are used to identify components and do not necessarily limit the number or order. [Example]

[0015] FIG. 1 is a diagram illustrating an example of a system configuration according to a first embodiment.

[0016] The system is composed of a business data management server 100, a terminal 101, and a plurality of bases 102. The business data management server 100, the terminal 101, and the plurality of bases 102 are connected via a network 103 such as a WAN (Wide Area Network) or a LAN (Local Area Network).

[0017] At the base 102, work is performed according to a work flow. Work may be, for example, application work, manufacturing work, production work, or performance testing work. Note that the present invention is not limited to the content of the work. A work flow represents the procedure for multiple tasks. A work flow can be expressed as a directed graph consisting of nodes representing tasks and directed edges connecting the nodes in the order of the tasks.

[0018] The base 102 includes a plurality of data generating devices 111 and a business data collecting device 110. The data generating device 111 is a device that generates business data related to business, such as a sensor, a camera, or a terminal operated by an operator. The business data collecting device 110 is a device that collects and manages business data. The business data collecting device 110 accumulates business data along with information related to business flows. The information related to business flows is, for example, a business flow identifier.

[0019] The business data management server 100 acquires and stores business data from the business data collection device 110 at each base 102. The business data management server 100 also accepts requests from the terminal 101 and executes various processes.

[0020] The terminal 101 is a terminal for transmitting various requests to the business data management server 100 .

[0021] FIG. 2 is a diagram illustrating an example of the configuration of the business data collection device 110 according to the first embodiment.

[0022] The business data collection device 110 includes a processor 200, a main memory device 201, an auxiliary memory device 202, and a network interface 203. The hardware elements are connected via a bus 204.

[0023] The processor 200 is a device that performs various calculations and executes programs stored in the main memory device 201. The processor 200 operates as a functional unit (module) that realizes a specific function by executing processing in accordance with the program. In the following explanation, when a processing is explained using a functional unit as the subject, it indicates that the processor 200 is executing a program that realizes the functional unit.

[0024] The main memory device 201 is a storage device that stores programs executed by the processor 200 and information executed by the programs, and is, for example, a volatile or non-volatile memory. The main memory device 201 is also used as a work area. The auxiliary memory device 202 is a large-capacity storage device that permanently stores information, and is, for example, an HDD (Hard Disk Drive) or SSD (Solid State Drive). The network interface 203 communicates with other devices via a network.

[0025] The programs and information stored in the main memory device 201 may be stored in the auxiliary memory device 202. In this case, the processor 200 reads the programs and information from the auxiliary memory device 202 and loads them into the main memory device 201.

[0026] The main storage device 201 stores a program that implements the collection unit 210 and a business data DB 220. The collection unit 210 collects business data from the data generation device 111. The business data DB 220 is a database that stores business data.

[0027] FIG. 3 is a diagram illustrating an example of the configuration of the business data management server 100 according to the first embodiment.

[0028] The business data management server 100 includes a processor 300, a main storage device 301, an auxiliary storage device 302, and a network interface 303. The hardware elements are connected via a bus 304.

[0029] The processor 300, main memory device 301, auxiliary memory device 302, network interface 303, and bus 304 are the same hardware elements as the processor 200, main memory device 201, auxiliary memory device 202, network interface 203, and bus 204, so their description will be omitted.

[0030] The main memory device 301 stores a program that realizes the management unit 310. The main memory device 301 also stores a business data DB 320, a business flow DB 321, a node / business flow correspondence management DB 322, and an integrated business flow DB 323.

[0031] The management unit 310 manages business data and business flows, and executes various processes in accordance with user requests.

[0032] The business data DB 320 is a database that stores business data. The business flow DB 321 is a database that stores information related to business flows. The node / business flow correspondence management DB 322 is a database that stores information for managing the correspondence between nodes and business flows. The integrated business flow DB 323 is a database that stores information related to integrated business flows that are used to search for business flows.

[0033] It should be noted that with regard to the functional units of the business data management server 100, multiple functional units may be combined into one functional unit, or one functional unit may be divided into multiple functional units for each function.

[0034] Although the business data management server 100 is implemented using a physical computer, it may be implemented using virtualization technology. Furthermore, the functions of the business data management server 100 may be implemented using a computer system consisting of multiple computers.

[0035] FIG. 4 is a diagram illustrating an example of the data structure of data stored in the business data DB 320 according to the first embodiment.

[0036] The business data DB 320 stores business data 400. The business data 400 includes a business identifier 401, a data identifier 402, and a plurality of items 403.

[0037] The business identifier 401 is a field that stores the identifier of the business. The data identifier 402 is a field that stores the identifier of the business data. The item 403 is a field that stores the item value that is measured or acquired during the work. The number of items 403 included in the business data 400 can be set arbitrarily.

[0038] If the work is materials research and development, an identifier that identifies the work, such as polymerization or mixing, becomes the work identifier, and values that characterize the work content, such as the work date and time, work time, and temperature, are recorded as items.

[0039] The data stored in the business data DB 220 managed by the business data collection device 110 also has a similar data structure.

[0040] 5A and 5B are diagrams illustrating an example of the data structure of data stored in the business flow DB 321 according to the first embodiment.

[0041] The business flow DB 321 stores business flow metadata 500 and node data 510 .

[0042] The business flow metadata 500 is data for managing an overview of a business flow. The business flow DB 321 stores as many business flow metadata 500 as there are business flows. The business flow metadata 500 includes a business identifier 501, a business flow identifier 502, a creation date and time 503, and a business flow feature 504.

[0043] The business identifier 501 is a field that stores the identifier of a business. The business flow identifier 502 is a field that stores the identifier of a business flow. The creation date and time 503 is a field that stores the date and time when the business flow was created. The business flow characteristics 504 is a field that stores information that characterizes the business flow. For example, the amount of CO2 reduction and power consumption of a factory production line. Note that the business flow metadata 500 does not have to include a business flow characteristic 504, or it may include two or more business flow characteristics 504.

[0044] Node data 510 is data for managing nodes corresponding to tasks that make up a business flow. In the following explanation, nodes corresponding to tasks are also referred to as task nodes. For one business flow, there are as many node data 510 as there are tasks that make up the business flow. The node data 510 includes a business flow identifier 511, a node identifier 512, a previous node identifier 513, a next node identifier 514, a data identifier 515, and a registration date and time 516.

[0045] The business flow identifier 511 is a field that stores the identifier of the business flow. The node identifier 512 is a field that stores the identifier of the work node. The previous node identifier 513 is a field that stores the identifier of the work node that precedes the work node that corresponds to the node data 510. The next node identifier 514 is a field that stores the identifier of the work node that follows the work node that corresponds to the node data 510. Note that the node identifier for the same work is assumed to be the same in each business flow.

[0046] The data identifier 515 is a field that stores an identifier that specifies the task data 400 of the task corresponding to the task node. The registration date and time 516 is a field that stores the latest registration date and time of the task data 400.

[0047] The user sets the definition information of the business flow (business flow metadata 500 and node data 510) using the terminal 101, for example, and registers it in the business data management server 100.

[0048] FIG. 6 is a diagram illustrating an example of the data structure of data stored in the node / business flow correspondence management DB 322 according to the first embodiment.

[0049] The node / business flow correspondence management DB 322 stores correspondence data 600. The correspondence data 600 includes a node identifier 601 and a business flow list 602.

[0050] The node identifier 601 is a field that stores the identifier of the operation node. The business flow list 602 is a field that stores the identifier of the business flow that includes the operation node.

[0051] 7A, 7B, and 7C are diagrams showing examples of data structures of data stored in the integrated workflow DB 323 according to the first embodiment.

[0052] The integrated workflow DB 323 stores integrated workflow metadata 700, node data 710, and integrated node data 720.

[0053] The integrated workflow metadata 700 is data for managing an overview of an integrated workflow. The integrated workflow DB 323 stores as many pieces of integrated workflow metadata 700 as there are integrated workflows. The integrated workflow metadata 700 includes a business identifier 701 and an integrated workflow identifier 702.

[0054] The task identifier 701 is a field that stores the identifier of a task. The integrated workflow identifier 702 is a field that stores the identifier of an integrated workflow.

[0055] The node data 710 is data for managing the nodes that make up an integrated workflow. For one integrated workflow, there is as much node data 710 as there are nodes that make up the integrated workflow. Note that an integrated workflow includes operation nodes and integrated nodes that integrate multiple operation nodes. In the following explanation, when there is no need to distinguish between operation nodes and integrated nodes, they will be referred to as nodes.

[0056] The node data 710 includes an integrated workflow identifier 711 , a node identifier 712 , a previous node identifier 713 , and a subsequent node identifier 714 .

[0057] The integrated workflow identifier 711 is a field that stores the identifier of the integrated workflow. The node identifier 712 is a field that stores the identifier of the node. In the case of an operation node, the identifier of the operation node in the workflow is stored as is, and in the case of an integrated node, the identifier assigned to the integrated node is stored.

[0058] The previous node identifier 713 is a field that stores the identifier of the node that precedes the node that corresponds to the node data 710. The next node identifier 714 is a field that stores the identifier of the node that follows the node that corresponds to the node data 710.

[0059] The integrated node data 720 is data for managing the integrated node, and includes an integrated workflow identifier 721, a node identifier 722, and an operation node list 723.

[0060] The integrated workflow identifier 721 is a field that stores the identifier of the integrated workflow. The node identifier 722 is a field that stores the identifier of the integrated node. The operation node list 723 is a field that stores the identifiers of the operation nodes that make up the integrated node.

[0061] Next, we will explain the processing executed by the business data management server 100. The business data management server 100 executes processing to analyze the correspondence between nodes and business flows, processing to generate an integrated business flow, and processing to search for business flows.

[0062] The business data management server 100 periodically or upon receiving an execution instruction executes an analysis process of the correspondence between nodes and business flows.

[0063] The business data management server 100 references the business flow DB 321 and aggregates the node data 510 with the same node identifier 512 to generate the correspondence data 600. The business data management server 100 stores the generated correspondence data 600 in the node / business flow correspondence management DB 322.

[0064] The business data management server 100 executes the integrated business flow generation process periodically or when an execution instruction is received.

[0065] In the integrated business flow generation process, an integrated node that aggregates multiple work nodes is generated based on the presence or absence of nodes in each business flow, the order of the nodes, etc., and an integrated business flow consisting of the work nodes and the integrated node is generated.

[0066] 8A and 8B are diagrams illustrating an example of an integrated workflow generated by the business data management server 100 according to the first embodiment.

[0067] Workflows 801 and 802 shown in Figure 8A are examples of workflows for materials research and development. Materials research and development is a typical example of workflows being revised and evaluated through trial and error, with new workflows being continually considered depending on experimental results. In this example, workflow 801 consists of three nodes (tasks): compounding, mixing, and reaction, and indicates that each task is performed in this order. Workflow 802 consists of four nodes: compounding, mixing, feeling, and reaction, and indicates that each task is performed in this order.

[0068] The business data management server 100 generates an integrated business flow 810 by integrating business flows 801 and 802. The integrated business flow 810 consists of four nodes: blending, mixing, drying, and reaction. Although the business flow 801 does not include a node corresponding to drying, the two business flows 801 and 802 can be managed as the integrated business flow 810 by regarding drying as having been skipped in the integrated business flow 810.

[0069] Workflows 801, 802, and 803 in Figure 8B are an example of a workflow for materials research and development. Workflow 803 has the same node configuration as workflow 802, but the order of drying and mixing is reversed. It is difficult to simply integrate workflows 802 and 803. Therefore, drying and mixing are aggregated into a single integrated node as a random set of steps, and the workflows are integrated. The operation nodes included in the integrated node mean that they can be executed in any order in the integrated workflow. The business data management server 100 generates integrated workflow 811 by integrating workflows 801, 802, and 803.

[0070] In this way, by introducing an integrated node that represents a set of operation nodes in no particular order, it is possible to generate an integrated business flow that represents multiple business flows in a unified manner.

[0071] By presenting the integrated workflow to the user, it becomes easier to specify search conditions for workflows. Note that the generation of the integrated workflow does not necessarily have to be executed.

[0072] Next, the business data search process will be described with reference to Fig. 9. Fig. 9 is a sequence diagram illustrating the flow of the search process for the business flow in the system of the first embodiment.

[0073] The user operates the terminal 101 to access the business data management server 100 (step S101).

[0074] When the business data management server 100 receives the access, it presents a screen (user interface) for receiving the designation of the business (step S102). For example, a screen 1000 as shown in FIG.

[0075] The screen 1000 includes a task list table 1001 and operation buttons 1002. The task list table 1001 displays entries consisting of a "task identifier," "number of workflows," "number of nodes," and "selection." The "number of nodes" in the task list table 1001 stores the total number of operation nodes in each workflow. The task list table 1001 can be generated based on the workflow DB 321.

[0076] The user operates "select" for the entry corresponding to the desired business, and then operates the operation button 1002. At this time, the terminal 101 transmits a request to display the business flow to the business data management server 100 (step S103).

[0077] When the business data management server 100 receives the display request, it presents a screen (user interface) for displaying the business flow (step S104). For example, a screen 1100 as shown in FIG.

[0078] Screen 1100 includes display fields 1101 and 1102. Display field 1101 is a field that displays the integrated business flow of the selected business. Display field 1101 displays a directed graph that represents the integrated business flow and operation buttons 1110. Operation buttons 1110 are operation buttons for setting search conditions for business flows. Display field 1102 is a field that displays an overview of the business flow, and includes a business flow list table 1120. The business flow list table 1120 displays entries consisting of a "business flow identifier," "number of nodes," and "number of data." "Number of data" is a field that stores the number of business data acquired in business performed according to the business flow.

[0079] After checking the business flow information displayed on the screen 1100, the user operates the operation button 1110. At this time, the terminal 101 transmits a setting request to the business data management server 100 (step S105).

[0080] When the business data management server 100 receives the setting request, it presents a screen (user interface) for setting search conditions (step S106). For example, a screen 1200 as shown in FIG.

[0081] The screen 1200 includes a node selection table 1201 , an order setting table 1202 , and operation buttons 1203 .

[0082] The node selection table 1201 is a table for selecting an operation node. The operation nodes that make up the integrated business flow are displayed in the node selection table 1201. The user operates the add button to select the operation node to be used in the search. In Figure 12, operations 3, 4, and 5 have been selected.

[0083] The order setting table 1202 is a table for setting the order of the work nodes selected in the node selection table 1201 .

[0084] The user sets a search workflow that will be the search criteria using the node selection table 1201 and order setting table 1202 on the screen 1200, and then operates the operation button 1203. At this time, the terminal 101 sends a search request to the business data management server 100 (step S107). The search request includes the search workflow as a search criteria.

[0085] When the business data management server 100 receives the search request, it executes a business flow search process (step S108). The details of the business flow search process will be described later.

[0086] The business data management server 100 presents a screen (user interface) for displaying the results of the business flow search process (search results) (step S109). For example, a screen 1300 as shown in FIG.

[0087] The screen 1300 includes a display field 1301 and a display field 1302. The display field 1301 is a field for displaying a search workflow, which is a search condition. The display field 1302 is a field for displaying search results. The display field 1302 includes a workflow list 1310 and operation buttons 1311.

[0088] The business flow list 1310 is a list of business flows found based on the search criteria. The business flow list 1310 displays entries consisting of "business flow identifier," "selection," and "details." "Selection" is a field for selecting a business flow that will output business data. "Details" displays a display button for displaying a screen for selecting an operation (operation node) that will output business data. When the display button is operated, a screen for displaying a directed graph representing the business flow is displayed. For example, a screen 1400 such as that shown in FIG. 14 is displayed.

[0089] The user selects an operation for acquiring business data from the operations of the business flow displayed on screen 1400, and operates operation button 1401. In Fig. 14, operations 3 and 5 are selected.

[0090] The task for which business data is to be acquired may be selected using a search workflow. In this case, the business data of the task selected in the search workflow of the specified workflow is acquired.

[0091] Returning to the explanation of Fig. 13, the operation button 1311 is a button for outputting business data. When the operation button 1311 is operated, the terminal 101 transmits an output request to the business data management server 100 (step S110). The output request includes one or more combinations of business flows and node groups.

[0092] When the business data management server 100 receives the output request, it acquires business data from the business data DB 320 and transmits the acquired data to the terminal 101 (step S111). At this time, a screen 1500 as shown in FIG. 15 may be presented.

[0093] Screen 1500 displays business data corresponding to the selected business flow and operation node group. The user checks the business data displayed on screen 1500 and operates operation button 1501 to save the business data in a predetermined data format. Note that instead of displaying screen 1500, the business data management server 100 may transmit the business data in any data format, such as CSV.

[0094] FIG. 16 is a flowchart illustrating an example of a business flow search process executed by the business data management server 100 according to the first embodiment.

[0095] The business data management server 100 generates node pairs of the search business flow and creates a set (U R ) is generated (step S201). Specifically, the following processing is executed.

[0096] (S201-1) The business data management server 100 selects one task node from the directed graph representing the search task flow. Here, it is assumed that the task node is selected in the order of tasks. The selected task node is referred to as the starting node.

[0097] (S201-2) The business data management server 100 identifies the work nodes that can be reached by tracing the directed graph in the work order direction starting from the origin node, generates a pair of the origin node and the identified work node as a node pair, and creates a set (U R ) in the work area. The business data management server 100 generates the node pair in a data format that indicates that the execution order of the identified task node is later than the execution order of the starting node.

[0098] (S201-3) The business data management server 100 determines whether or not processing has been completed for all the operation nodes that make up the search business flow.

[0099] If processing has not been completed for all the operation nodes that make up the search workflow, the business data management server 100 returns to S201-1. If processing has been completed for all the operation nodes that make up the search workflow, the business data management server 100 ends the processing of step S201.

[0100] In the case of the search workflow shown in FIG. 13, three node pairs are generated: (task 3, task 4), (task 3, task 5), and (task 4, task 5).

[0101] Next, the business data management server 100 identifies candidate business flows based on the search conditions (step S201).

[0102] Specifically, the business data management server 100 refers to the node / business flow correspondence management DB 322 and identifies a business flow that includes all of the operation nodes that make up the search business flow.

[0103] Next, the business data management server 100 starts loop processing of the candidate business flows (step S203). Here, the business data management server 100 selects one candidate business flow.

[0104] Next, the business data management server 100 generates node pairs of the candidate business flows using the business flow DB 321, and generates a set (U) whose elements are the node pairs (step S204). The method for generating node pairs is the same as the method described in step S201.

[0105] Next, the business data management server 100 R ) is a subset of the set (U) (step S205).

[0106] Set (U RIf (U) is not a subset of the set (U), the business data management server 100 proceeds to step S207.

[0107] Set (U R If (U) is a subset of the set (U), the business data management server 100 registers the candidate business flow in a list (step S206), and then proceeds to step S207.

[0108] In step S207, the business data management server 100 determines whether or not processing has been completed for all candidate business flows (step S207).

[0109] If processing has not been completed for all candidate workflows, the business data management server 100 returns to step S203. If processing has been completed for all candidate workflows, the business data management server 100 ends the business flow search process. The business data management server 100 transmits the list as the search results.

[0110] In the first embodiment, by using the correspondence between operation nodes and business flows, it is possible to quickly narrow down candidate business flows. Also, by comparing sets whose elements are node pairs of business flows, it is possible to quickly identify business flows that contain operation nodes in a specified order. This allows business flows to be searched for more quickly than searches based on graph comparison. [Example]

[0111] The process content of the business flow search process is different in the second embodiment. The second embodiment will be described below, focusing on the differences from the first embodiment.

[0112] The system configuration of the second embodiment is the same as that of the first embodiment. The hardware configuration and software configuration of the business data collection device 110 and the business data management server 100 of the second embodiment are the same as those of the first embodiment. In addition, the data structure of the data stored in the databases managed by the business data collection device 110 and the business data management server 100 of the second embodiment is the same as that of the first embodiment.

[0113] FIG. 17 is a flowchart illustrating an example of a business flow search process executed by the business data management server 100 according to the second embodiment.

[0114] The business data management server 100 generates a node pair of a search business flow (step S301). Specifically, the following process is executed.

[0115] (S301-1) The business data management server 100 selects one task node from the directed graph representing the search workflow. Here, it is assumed that the task nodes are selected in the order of tasks. The selected task node is referred to as the starting node.

[0116] (S301-2) The business data management server 100 identifies a task node that can be reached by tracing the directed graph in the task order direction starting from the starting node, and generates a node pair consisting of the starting node and the identified task node. The business data management server 100 generates the node pair so that the starting node can be identified. The business data management server 100 stores the node pair in a work area.

[0117] (S301-3) The business data management server 100 determines whether or not processing has been completed for all operation nodes that make up the search business flow.

[0118] If processing has not been completed for all the operation nodes that make up the search workflow, the business data management server 100 returns to S301-1. If processing has been completed for all the operation nodes that make up the search workflow, the business data management server 100 ends the processing of step S301.

[0119] Next, the business data management server 100 identifies candidate business flows based on the search conditions (step S302). The process of step S302 is the same as the process of step S202.

[0120] Next, the business data management server 100 starts loop processing of the candidate business flows (step S303). The processing in step S303 is the same as the processing in step S203.

[0121] Next, the business data management server 100 starts loop processing of the node pairs of the search business flow (step S304).

[0122] Next, the business data management server 100 determines whether the candidate business flow includes the selected node pair (step S305).

[0123] Specifically, the following processing is executed: The business data management server 100 traces the directed graph (candidate business flow) in the work order direction, starting from the starting node of the node pair, and determines whether it is possible to reach the task nodes that make up the node pair. If it is possible to reach the task nodes that make up the node pair, the business data management server 100 determines that the candidate business flow includes the selected node pair.

[0124] If the candidate workflow does not include the selected node pair, the business data management server 100 ends the loop processing of the node pair and proceeds to step S308.

[0125] If the candidate workflow includes the selected node pair, the business data management server 100 determines whether processing has been completed for all node pairs (step S306).

[0126] If the process has not been completed for all node pairs, the business data management server 100 returns to step S304.

[0127] When processing has been completed for all node pairs, the business data management server 100 registers the candidate business flow in a list (step S307), and then proceeds to step S308.

[0128] In step S308, the business data management server 100 determines whether or not processing has been completed for all candidate business flows (step S308).

[0129] If processing has not been completed for all candidate workflows, the business data management server 100 returns to step S303. If processing has been completed for all candidate workflows, the business data management server 100 ends the workflow search process.

[0130] In the second embodiment, there is no need to generate node pairs for candidate workflows, so the processing costs required for searching can be expected to be lower than in the first embodiment. [Example]

[0131] The third embodiment differs from the first embodiment in that business-specific information is included in the search conditions. The third embodiment will be described below, focusing on the differences from the first embodiment.

[0132] The system configuration of the third embodiment is the same as that of the first embodiment. The hardware configuration and software configuration of the business data collection device 110 and the business data management server 100 of the third embodiment are the same as those of the first embodiment. In addition, the data structure of the data stored in the databases managed by the business data collection device 110 and the business data management server 100 of the third embodiment is the same as that of the first embodiment.

[0133] In the third embodiment, the method of setting search conditions is different from that in the first embodiment. Fig. 18 is a diagram showing an example of a screen presented by the business data management server 100 in the third embodiment.

[0134] The screen 1200 newly includes an additional condition setting table 1210 and an operation button 1211. The additional condition setting table 1210 is a table for setting additional conditions for searching business flows, separate from the conditions related to task nodes. The operation button 1211 is an operation button for adding business conditions. In Fig. 18, a condition related to CO2 emissions is specified as an additional condition.

[0135] In the third embodiment, the process of searching for a workflow is partially different from that in the first embodiment. Specifically, the process of identifying a candidate workflow (step S201) is different from that in the first embodiment.

[0136] First, the business data management server 100 refers to the node / business flow correspondence management DB 322 and identifies a business flow that includes all of the operation nodes that make up the search business flow.

[0137] Next, the business data management server 100 refers to the business flow DB 321 and the business flow metadata 500 of the identified business flow to identify a business flow that satisfies the additional condition.

[0138] In the third embodiment, the content of the screen that displays the results of the business flow search process is partially different. Fig. 19 is a diagram showing an example of a screen presented by the business data management server 100 of the third embodiment. In the display field 1301, additional conditions are displayed in addition to the search business flow. Also, the business flow list 1310 includes items specified as additional conditions.

[0139] The present invention is not limited to the above-described embodiments, but includes various modifications. For example, the above-described embodiments are provided to explain the present invention in detail, and the present invention is not necessarily limited to those including all of the described configurations. Furthermore, some of the configurations of each embodiment can be added to, deleted from, or replaced with other configurations.

[0140] Furthermore, the above-described configurations, functions, processing units, processing means, etc. may be partially or entirely implemented in hardware, for example, by designing them as integrated circuits. The present invention can also be realized by software program code that implements the functions of the embodiments. In this case, a storage medium on which the program code is recorded is provided to a computer, and a processor included in the computer reads the program code stored in the storage medium. In this case, the program code itself read from the storage medium implements the functions of the above-described embodiments, and the program code itself and the storage medium on which it is stored constitute the present invention. Examples of storage media for providing such program code include flexible disks, CD-ROMs, DVD-ROMs, hard disks, solid-state drives (SSDs), optical disks, magneto-optical disks, CD-Rs, magnetic tapes, non-volatile memory cards, and ROMs.

[0141] Furthermore, the program code that realizes the functions described in this embodiment can be implemented in a wide range of program or script languages, such as assembler, C / C++, perl, Shell, PHP, Python, and Java (registered trademark).

[0142] Furthermore, the program code of the software that realizes the functions of the embodiments may be distributed via a network and stored in a storage means such as a computer's hard disk or memory, or in a storage medium such as a CD-RW or CD-R, and the processor of the computer may read and execute the program code stored in the storage means or storage medium.

[0143] In the above-described embodiment, the control lines and information lines are those that are considered necessary for the explanation, and not all control lines and information lines are necessarily shown in the product. All components may be interconnected. [Explanation of symbols]

[0144] 100 Business data management server 101 terminals 102 locations 103 Network 110 Business data collection device 111 Data generation device 200, 300 processors 201, 301 Main storage 202, 302 Auxiliary storage device 203, 303 network interface Buses 204 and 304 210 Collection Department 220, 320 Business Data DB 310 Management Department 321 Business Flow DB 322 Node / Business Flow Management DB 323 Integrated Business Flow DB 400 Business Data 500 Business Flow Metadata 510 Node Data 600 Correspondence Data 700 Integrated Business Flow Metadata 710 Node Data 720 Integrated Node Data 1000, 1200, 1300, 1400, 1500 screen

Claims

1. A computer system comprising a processor, a storage device connected to the processor, and a network interface connected to the processor, a first database for managing a directed graph that represents a workflow that defines the procedures of a plurality of tasks and is composed of nodes that represent the tasks and directed edges that connect the nodes in accordance with the task sequence; a second database for managing the correspondence between the nodes and the business flows; Hold receiving a search request including a search workflow expressed as a directed graph consisting of at least two of the nodes; generating a first node pair, which is a pair of the nodes constituting the search workflow, and in which an order relationship of the nodes in the search workflow is specified; referring to the second database, identifying the workflow including all of the nodes constituting the search workflow as a candidate workflow; a computer system that refers to the first database, searches among the candidate workflows for candidate workflows that include all of the generated first node pairs, and outputs the search results.

2. 2. The computer system of claim 1, a third database is maintained for each of the business flows to manage business data acquired in the business performed based on the business flow; A computer system that presents an interface for acquiring business data related to the candidate business flow included in the search results from the third database.

3. 2. The computer system of claim 1, generating a second node pair, which is a pair of the nodes that constitute the candidate workflow, and in which an order relationship between the nodes in the candidate workflow is specified; A computer system characterized by comparing the set of first node pairs and the set of second node pairs, and identifying the candidate business flow in which the set of first node pairs is a subset of the set of second node pairs.

4. 2. The computer system of claim 1, A computer system characterized by identifying, for each of the first node pairs, the candidate business flow that can reach the node that is later in the order of the first node pair by starting from the node that is earlier in the order of the first node pair and tracing the candidate business flow according to the order of the tasks.

5. A method for searching for a workflow that defines a procedure for a plurality of tasks, executed by a computer system, comprising: The computer system a processor, a storage device connected to the processor, and a network interface connected to the processor; a first database for managing a directed graph representing the workflow and consisting of nodes representing the tasks and directed edges connecting the nodes in accordance with the task order; a second database for managing the correspondence between the nodes and the business flows; Hold The method for searching for a workflow includes: a first step in which the computer system receives a search request including a search workflow represented as a directed graph consisting of at least two of the nodes; a second step in which the computer system generates a first node pair, which is a pair of the nodes constituting the search workflow, and in which an order relationship of the nodes in the search workflow is specified; a third step in which the computer system refers to the second database and identifies, as a candidate workflow, the workflow that includes all of the nodes that constitute the search workflow; a fourth step in which the computer system refers to the first database to search for candidate workflows that include all of the generated first node pairs from among the candidate workflows, and outputs the search results; A method for searching for a business flow, comprising:

6. 6. The business flow search method according to claim 5, the computer system holds, for each of the business flows, a third database for managing business data acquired in business performed based on the business flow; The method for searching for business flows is characterized in that it includes a step in which the computer system presents an interface for obtaining business data related to the candidate business flows included in the search results from the third database.

7. 6. The business flow search method according to claim 5, The third step includes: generating a second node pair, which is a pair of the nodes that constitute the candidate workflow and in which an order relationship between the nodes in the candidate workflow is specified, by the computer system; a step in which the computer system compares the set of first node pairs with the set of second node pairs, and identifies the candidate business flows in which the set of first node pairs is a subset of the set of second node pairs.

8. 6. The business flow search method according to claim 5, The third step is a method for searching for business flows, characterized in that the computer system identifies, for each of the first node pairs, the candidate business flow that can reach the node that is later in the order of the first node pair by starting from the node that is earlier in the order of the first node pair and tracing the candidate business flow in accordance with the order of the tasks.

Citation Information

Patent Citations

  • Method, device and equipment for data search

    CN115408427A

  • System and method for generating process flow structure

    JP2015176603A

  • Business information management system and data search method

    JP2023057221A

  • Graph Data Search Method and Apparatus

    US20170286484A1

  • Work information management system and data search method

    WO2023063172A1