Computer system and search support method
Through computer systems managing and comparing multiple task processes, an integrated workflow diagram is generated, which solves the problem of high cost of manual selection of workflows and realizes efficient workflow selection and analysis.
Patent Information
- Application Number
- JP2023122839
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-07-27
- Publication Date
- 2025-02-06
AI Technical Summary
When selecting a workflow to be analyzed among multiple service flows, the prior art requires manual selection, which is costly and inefficient.
Through computer systems, a computer system manages and compares multiple task processes, generates and presents an integrated workflow diagram containing unintegrated task nodes, allowing users to quickly select the appropriate workflow.
The selection process of multiple business flows is simplified, the visualization and analysis efficiency of workflows is improved, and the cost of manual selection is reduced.
Smart Images

Figure 2025018818000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a technique for searching data used for analyzing 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. In order to improve the efficiency of the tasks, it is important to optimize the selection of tasks to be performed and the order in which the tasks are performed.
[0003] A business flow can be represented as a directed graph with tasks as nodes. As a technique for generating a directed graph, for example, the techniques described in Patent Document 1 and Patent Document 2 are known.
[0004] Patent Document 1 states that "the directed graph creation device has an identification unit that refers to an event chain storage unit that stores a plurality of event chains and a directed graph storage unit that stores a directed graph created by integrating the plurality of event chains, and identifies, among the paths contained in the directed graph, a path that does not exist in any of the plurality of event chains; a duplication unit that creates a duplicate of the most downstream node excluding the endpoint node of the path and the edge connected to the node among the nodes to which a plurality of edges are connected downstream on the identified path; and a deletion unit that deletes, from the duplicated edges, an edge such that deleting the edge will not remove any of the paths contained in the plurality of event chains from the directed graph."
[0005] Patent document 2 states that "the information processing device 1 classifies each of the multiple events included in multiple response histories 30 related to the actions and states to be recorded into actions and states. The information processing device 1 generates graph information 23 by an integration process based on the contents of the multiple events included in the multiple response histories 30. The information processing device 1 determines the validity of the integration process by verifying whether each of the paths included in the generated graph information 23 that pass through the events integrated by the integration process and classified into states is included in the partial paths of the multiple response histories 30." [Prior art documents] [Patent documents]
[0006] [Patent Document 1] JP 2012-194708 A [Patent Document 2] JP 2019-117442 A Summary of the Invention [Problem to be solved by the invention]
[0007] 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 had to manually select the workflow to analyze. However, when there are a large number of workflows, the cost required for workflow selection becomes high.
[0008] An object of the present invention is to provide a technique for supporting the selection of a workflow from among a plurality of workflows. [Means for solving the problem]
[0009] A representative example of the invention disclosed in the present 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, which manages, for each workflow defining the procedures of a plurality of tasks, business data acquired in a task based on the workflow, manages the workflow as a directed graph with one task as one node, compares the plurality of workflows, and generates an integrated node by executing at least one of the following processes based on the comparison result: a process of integrating the plurality of tasks having different order relationships between the workflows, and a process of integrating at least one task not included in the workflow with at least one task executed before the task and / or a task executed after the task, and generates a directed graph consisting of at least one unintegrated task node and at least one integrated node as an integrated workflow for searching the plurality of workflows, and presents the directed graph to a user. Effect of the Invention
[0010] According to the present invention, by presenting an integrated workflow that integrates multiple workflows, it is possible to easily specify the tasks and the order of the tasks included in the workflow to be searched. Problems, configurations and advantages other than those described above will become apparent from the following description of the embodiment. [Brief description of the drawings]
[0011] [Figure 1] FIG. 1 illustrates an example of a system configuration according to a first embodiment. [Diagram 2] FIG. 2 illustrates an example of a configuration of a business data collection device according to a first embodiment. [Diagram 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 6A] 13 is a diagram illustrating an example of a data structure of data stored in an integrated workflow DB according to the first embodiment. FIG. [Figure 6B] 13 is a diagram illustrating an example of a data structure of data stored in an integrated workflow DB according to the first embodiment. FIG. [Figure 6C] 13 is a diagram illustrating an example of a data structure of data stored in an integrated workflow DB according to the first embodiment. FIG. [Figure 7] 11 is a flowchart illustrating an example of an integrated workflow generation process executed by a business data management server according to the first embodiment. [Figure 8A] 13 is a flowchart illustrating an example of an integrated workflow update process executed by a business data management server according to the first embodiment. [Figure 8B] 13 is a flowchart illustrating an example of an integrated workflow update process executed by a business data management server according to the first embodiment. [Figure 9] 11 is a flowchart illustrating an example of a first order determination process executed by a business data management server according to the first embodiment. [Figure 10A] 11 is a flowchart illustrating an example of a second order determination process executed by the business data management server according to the first embodiment. [Figure 10B] 11 is a flowchart illustrating an example of a second order determination process executed by the business data management server according to the first embodiment. [Figure 11] FIG. 11 is a sequence diagram illustrating the flow of a search process for business data in the system according to the first embodiment. [Figure 12] FIG. 13 is a diagram illustrating an example of a screen presented by a business data management server according to the first embodiment. [Figure 13] FIG. 13 is a diagram illustrating an example of a screen presented by a business data management server according to the first embodiment. [Figure 14] FIG. 13 is a diagram illustrating an example of a screen presented by a business data management server according to the first embodiment. [Figure 15]11 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 16] FIG. 13 is a diagram illustrating an example of a screen presented by a business data management server according to the first embodiment. [Figure 17] FIG. 13 is a diagram illustrating an example of a screen presented by a business data management server according to the first embodiment. [Figure 18] 11 is a flowchart illustrating an example of a business flow search process executed by a business data management server according to the first embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0012] Hereinafter, an embodiment of the present invention will be described with reference to the drawings. However, the present invention is not to be interpreted as being limited to the description of the embodiment shown below. It will be easily understood by those skilled in the art that the specific configuration can be changed without departing from the concept or purpose of the present invention.
[0013] In the configurations of the invention described below, the same or similar configurations or functions are given the same reference numerals, and duplicated explanations are omitted.
[0014] In this specification, the terms "first," "second," "third," and the like are used to identify components and do not necessarily limit the number or order. EXAMPLES
[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, a task is performed according to a task flow. The task is, for example, an application task, a manufacturing task, a production task, a performance test task, etc. Note that the present invention is not limited to the content of the task. A task flow represents the procedure of a plurality of tasks. A task flow can be expressed as a directed graph with tasks as nodes.
[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 a 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 together with information related to the business flow. The information related to the business flow is, for example, an identifier of the business flow.
[0019] The business data management server 100 acquires and stores business data from the business data collection device 110 in 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 storage device 201, an auxiliary storage device 202, and a network interface 203. Each hardware element is 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 executes processes according to the programs, thereby operating as a functional unit (module) that realizes a specific function. In the following explanation, when a process is explained with 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 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 201 is also used as a work area. The auxiliary memory 202 is a large-capacity storage device that permanently stores information, and is, for example, a hard disk drive (HDD) or a solid state drive (SSD). 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 out 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 realizes 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 the 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. Each hardware element is connected via a bus 304.
[0029] The processor 300, the main memory device 301, the auxiliary memory device 302, the network interface 303, and the bus 304 are the same hardware elements as the processor 200, the main memory device 201, the auxiliary memory device 202, the network interface 203, and the bus 204, and therefore their explanation is omitted.
[0030] The main memory device 301 stores programs that realize a management unit 310 and a search unit 311. The main memory device 301 also stores a business data DB 320, a business flow DB 321, and an integrated business flow DB 322.
[0031] The management unit 310 manages business data and business flows. The search unit 311 searches for business data associated with a business flow in response to a user request.
[0032] The business data DB 320 is a database that stores business data. The business flow DB 321 is a database that stores definition information of business flows. The integrated business flow DB 322 is a database that stores definition information of integrated business flows used to search for business flows.
[0033] Regarding the functional units of the business data management server 100, multiple functional units may be integrated 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 realized by using a physical computer, it may be realized by using a virtualization technology. Also, the functions of the business data management server 100 may be realized by using a computer system consisting of multiple computers.
[0035] FIG. 4 is a diagram illustrating an example of a 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 task identifier 401 is a field that stores a task identifier. The data identifier 402 is a field that stores an identifier of task data. The item 403 is a field that stores an item value that is measured or obtained during the work. The number of items 403 included in the task data 400 can be set arbitrarily.
[0038] 5A and 5B are diagrams illustrating an example of a data structure of data stored in the business flow DB 321 according to the first embodiment.
[0039] The business flow DB 321 stores business flow metadata 500 and node data 510.
[0040] 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, and a creation date and time 503.
[0041] The task identifier 501 is a field that stores the identifier of the task. The task flow identifier 502 is a field that stores the identifier of the task flow. The creation date and time 503 is a field that stores the date and time when the task flow was created.
[0042] Node data 510 is data for managing nodes corresponding to operations constituting a business flow. In the following description, a node corresponding to an operation is also referred to as an operation node. For one business flow, there is as much node data 510 as there are operations constituting the business flow. 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.
[0043] 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 node. The previous node identifier 513 is a field that stores the identifier of the node before the node corresponding to the node data 510. The subsequent node identifier 514 is a field that stores the identifier of the node after the node corresponding to the node data 510.
[0044] The data identifier 515 is a field for storing an identifier for specifying the task data 400 of the task corresponding to the node. The registration date and time 516 is a field for storing the last registration date and time of the task data 400.
[0045] A user sets definition information of a business flow (business flow metadata 500 and node data 510) using, for example, the terminal 101 and registers it in the business data management server 100.
[0046] 6A, 6B, and 6C are diagrams showing an example of a data structure of data stored in the integrated workflow DB 322 according to the first embodiment.
[0047] The integrated workflow DB 322 stores integrated workflow metadata 600, node data 610, and integrated node data 620.
[0048] The integrated workflow metadata 600 is data for managing an overview of an integrated workflow. The integrated workflow DB 322 stores the same number of integrated workflow metadata 600 as the number of integrated workflows. The integrated workflow metadata 600 includes a business identifier 601 and an integrated workflow identifier 602.
[0049] The task identifier 601 is a field for storing a task identifier. The integrated workflow identifier 602 is a field for storing an integrated workflow identifier.
[0050] The node data 610 is data for managing the nodes that make up an integrated workflow. For one integrated workflow, there is as much node data 610 as there are nodes that make up the integrated workflow. 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.
[0051] The node data 610 includes an integrated workflow identifier 611 , a node identifier 612 , a previous node identifier 613 , a subsequent node identifier 614 , and an existence rate 615 .
[0052] The integrated workflow identifier 611 is a field that stores the identifier of the integrated workflow. The node identifier 612 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 given to the integrated node is stored.
[0053] The previous node identifier 613 is a field that stores the identifier of the node preceding the node corresponding to the node data 610. The next node identifier 614 is a field that stores the identifier of the node following the node corresponding to the node data 610. The existence rate 615 is a field that stores the percentage of the workflow that includes the operation node corresponding to the node data 610 among the workflows used to generate the integrated workflow. If the node is an integrated node, the existence rate of each of the operation nodes included in the integrated node is stored.
[0054] The integrated node data 620 is data for managing the integrated node. The integrated node data 620 includes an integrated workflow identifier 621, a node identifier 622, and an operation node list 623.
[0055] The integrated workflow identifier 621 is a field that stores an identifier of an integrated workflow. The node identifier 622 is a field that stores an identifier of an integrated node. The operation node list 623 is a field that stores the identifiers of the operation nodes that constitute the integrated node.
[0056] Next, a description will be given of the processing executed by the business data management server 100. The business data management server 100 executes processing for generating an integrated workflow and processing for searching business data using the integrated workflow. First, a description will be given of the processing for generating an integrated workflow.
[0057] The business data management server 100 executes an integrated workflow generation process periodically or when an execution instruction is received. Fig. 7 is a flowchart explaining an example of an integrated workflow generation process executed by the business data management server 100 of the first embodiment. Here, it is assumed that a business identifier is specified.
[0058] The business data management server 100 starts loop processing of the business flow (step S101). Specifically, the business data management server 100 selects one business flow of the business corresponding to the specified identifier from the business flow DB 321. Here, the business flow is selected in ascending order of the number of nodes. At this time, the creation date of the business flow may be taken into consideration. For example, a method of selecting the business flow in ascending order of the number of nodes and the oldest creation date is conceivable.
[0059] The business data management server 100 refers to the integrated workflow DB 322 and determines whether or not there is an integrated workflow corresponding to the specified business (step S102). That is, it is determined whether or not there is an integrated workflow metadata 600 in which the identifier of the specified business is set in the business identifier 601.
[0060] If the integrated workflow DB 322 does not contain an integrated workflow corresponding to the specified task, the task data management server 100 sets the selected task as an integrated workflow (step S104), and then proceeds to step S105.
[0061] Specifically, the business data management server 100 generates integrated business flow metadata 600, and generates integrated node data 620 corresponding to the node data 510 of the selected business flow.
[0062] If an integrated workflow corresponding to the specified task exists in the integrated workflow DB 322, the task data management server 100 executes an integrated workflow update process (step S103), and then proceeds to step S105. The integrated workflow update process will be described in detail later.
[0063] In step S105, the business data management server 100 determines whether or not the processing has been completed for all the business flows (step S105).
[0064] If processing has not been completed for all business flows, the business data management server 100 returns to step S101 and executes the same process. If processing has been completed for all business flows, the business data management server 100 ends the integrated business flow generation process.
[0065] 8A and 8B are flowcharts illustrating an example of the integrated workflow update process executed by the business data management server 100 according to the first embodiment.
[0066] The business data management server 100 starts loop processing of the nodes (step S201). Specifically, the business data management server 100 selects one node of the selected business flow. However, the node is selected in the order in which the tasks are to be executed.
[0067] The business data management server 100 determines whether the selected operation node is included in the integrated workflow (step S202). Specifically, the business data management server 100 determines whether there is node data 610 whose node identifier 612 value matches the node identifier 512 value, or integrated node data 620 whose operation node list 623 includes the value of the node identifier 512.
[0068] If the selected operation node is not included in the integrated workflow, the business data management server 100 integrates the operation node with the node preceding the selected operation node in the workflow (step S203), and then proceeds to step S204. Specifically, the following process is executed.
[0069] (S203-1) The business data management server 100 refers to the node data 510 of the selected operation node to identify the previous node.
[0070] (S203-2) The business data management server 100 refers to the integrated business flow DB 322 and determines whether or not there is node data 610 in which the identifier of the previous node is stored in the node identifier 612.
[0071] (S203-3) If there is node data 610 in which the identifier of the previous node is stored in the node identifier 612, the business data management server 100 generates integrated node data 620 that stores the identifiers of the previous node and the selected work node in the work node list 623. The business data management server 100 determines the identifier of the integrated node and stores it in the node identifier 622. The business data management server 100 rewrites the node identifier 612 of the searched node data 610 to the identifier of the integrated node. After that, the business data management server 100 ends the processing of step S203.
[0072] (S203-4) If there is no node data 610 in which the identifier of the previous node is stored in the node identifier 612, the business data management server 100 searches for integrated node data 620 which stores the identifier of the previous node in the work node list 623, and stores the identifier of the selected work node in the work node list 623 of the integrated node data 620. After that, the business data management server 100 ends the process of step S203.
[0073] The selected task node may be integrated with the node following the selected task node. In this manner, tasks that are not included in at least one business flow are integrated with the preceding task or the following task.
[0074] In step S204, the business data management server 100 determines whether or not processing has been completed for all nodes in the selected business flow (step S204).
[0075] If processing has not been completed for all nodes of the selected business flow, the business data management server 100 returns to step S201 and executes the same process. If processing has been completed for all nodes of the selected business flow, the business data management server 100 ends the integrated business flow update process.
[0076] If it is determined in step S202 that the selected operation node is included in the integrated workflow, the business data management server 100 determines whether or not an integrated node including the operation node exists (step S205). Specifically, it is determined whether or not integrated node data 620 exists in which the identifier of the selected operation node is stored in the operation node list 623.
[0077] If an integrated node including the selected operation node exists, the business data management server 100 proceeds to step S204.
[0078] If there is no integrated node including the selected operation node, the business data management server 100 determines whether or not both the preceding node and succeeding node of the selected operation node in the business flow are included in the integrated business flow (step S206).
[0079] Specifically, the business data management server 100 identifies the previous node and the subsequent node of the selected work node in the selected business flow based on the node data 510 of the selected work node. For each of the previous node and the subsequent node, the business data management server 100 determines whether or not there exists node data 610 that stores the identifier of the node (previous node or subsequent node) in the node identifier 612, or integrated node data 620 that stores the identifier of the node (previous node or subsequent node) in the work node list 623.
[0080] If both the previous node and the next node of the selected operation node in the business flow are included in the integrated business flow, the business data management server 100 executes a first order determination process (step S207), and then proceeds to step S204. The first order determination process will be described in detail later.
[0081] If at least one of the preceding node and succeeding node of the selected operation node in the business flow is not included in the integrated business flow, the business data management server 100 executes a second order determination process (step S208) and then proceeds to step S204. The second order determination process will be described in detail later.
[0082] FIG. 9 is a flowchart illustrating an example of the first order determination process executed by the business data management server 100 according to the first embodiment.
[0083] The business data management server 100 compares the order relationship between the selected operation node, previous node, and next node in the business flow with the order relationship between the selected operation node, previous node, and next node in the integrated business flow (step S301).
[0084] Specifically, the business data management server 100 identifies the order relationship of the selected operation node, the previous node, and the next node in the integrated business flow by referring to the integrated business flow DB 322. If any of the operation node, the previous node, and the next node is included in the integrated node, the order relationship of the integrated node and the other two operation nodes is compared with the order relationship of the selected operation node, the previous node, and the next node in the business flow.
[0085] The business data management server 100 determines whether the order relationships match based on the comparison result (step S302).
[0086] If the order relationships match, the business data management server 100 ends the first order determination process.
[0087] If the order relationships do not match, the business data management server 100 integrates the nodes in the range (integration range) that includes the selected operation node, the previous node, and the next node of the integrated workflow (step S303). After that, the business data management server 100 ends the first order determination process. Specifically, the following process is executed.
[0088] (S303-1) The business data management server 100 determines whether or not two or more integrated nodes are included in the nodes included in the integration range.
[0089] (S303-2) When two or more integrated nodes are included in the nodes included in the integration range, the business data management server 100 merges the integrated node data 620 corresponding to the integrated nodes to generate one integrated node data 620. The business data management server 100 registers the identifiers of the work nodes included in the integration range in the work node list 623 of the generated integrated node data 620.
[0090] The business data management server 100 generates node data 610 corresponding to the newly generated integrated node. The node identifier 612 is set to the value of node identifier 622. The previous node identifier 613 is set to the value of previous node identifier 613 in integrated node data 620 of the node that is the earliest in order among the nodes included in the integration range. The next node identifier 614 is set to the value of next node identifier 614 in integrated node data 620 of the node that is the latest in order among the nodes included in the integration range.
[0091] The business data management server 100 deletes the node data 610 of the working nodes in the integration range, and then the business data management server 100 ends the process of step S303.
[0092] (S303-3) If two or more integrated nodes are not included in the nodes included in the integration range, the business data management server 100 determines whether or not one integrated node is included in the integration range.
[0093] (S303-4) When one integrated node is included among the nodes included in the integration range, the business data management server 100 registers the identifier of the working node included in the integration range in the working node list 623 of the integrated node data 620 corresponding to the integrated node. Also, the previous node identifier 613 is set to the value of the previous node identifier 613 in the node data 610 of the node that is the earliest in order among the nodes included in the integration range. The next node identifier 614 is set to the value of the next node identifier 614 in the node data 610 of the node that is the latest in order among the nodes included in the integration range.
[0094] The business data management server 100 deletes the node data 610 of the operation nodes included in the integration range, and then the business data management server 100 ends the process of step S303.
[0095] (S303-5) If the integrated node is not included in the nodes included in the integration range, the business data management server 100 generates integrated node data 620. The business data management server 100 sets an identifier in the integrated business flow identifier 621, sets the identifier of the integrated node in the node identifier 622, and sets the identifiers of the work nodes included in the integration range in the work node list 623. The business data management server 100 generates node data 610 corresponding to the integrated node. The previous node identifier 613 is set to the value of the previous node identifier 613 in the node data 610 of the work node that is the earliest in the order within the integration range. The next node identifier 614 is set to the value of the next node identifier 614 in the node data 610 of the work node that is the latest in the order among the nodes included in the integration range.
[0096] The business data management server 100 deletes the node data 610 of the operation nodes included in the integration range, and then the business data management server 100 ends the process of step S303.
[0097] 10A and 10B are flowcharts illustrating an example of the second order determination process executed by the business data management server 100 according to the first embodiment.
[0098] The business data management server 100 determines whether or not the node preceding the selected operation node in the business flow is included in the integrated business flow (step S401).
[0099] If the previous node of the selected work node in the business flow is included in the integrated business flow, the business data management server 100 compares the order relationship between the selected work node and the previous node in the business flow with the order relationship between the selected work node and the previous node in the integrated business flow (step S402).
[0100] The business data management server 100 judges whether the order relationships match based on the comparison result (step S403). That is, it is judged whether the order of the previous node is before the operation node in the integrated business flow.
[0101] If the order relationships match, the business data management server 100 ends the second order determination process.
[0102] If the order relationships do not match, the business data management server 100 integrates the nodes in the range (integration range) that includes the selected operation node and the previous node of the integrated workflow (step S404). After that, the business data management server 100 ends the second order determination process. The process of step S404 is the same as the process of step S303, so a detailed description will be omitted.
[0103] In step S401, if the node preceding the selected operation node in the business flow is not included in the integrated business flow, the business data management server 100 determines whether the node following the selected operation node in the business flow is included in the integrated business flow (step S405).
[0104] If the successor node of the selected work node in the business flow is included in the integrated business flow, the business data management server 100 compares the order relationship between the selected work node and the successor node in the business flow with the order relationship between the selected work node and the successor node in the integrated business flow (step S406).
[0105] The business data management server 100 judges whether the order relationships match based on the comparison result (step S407). That is, it is judged whether the order of the subsequent node is after the operation node in the integrated business flow.
[0106] If the order relationships match, the business data management server 100 ends the second order determination process.
[0107] If the order relationships do not match, the business data management server 100 integrates the nodes in the range (integration range) that includes the selected operation node and the subsequent node of the integrated workflow (step S408). After that, the business data management server 100 ends the second order determination process. The process of step S408 is the same as the process of step S303, so a detailed description will be omitted.
[0108] In step S405, if the node following the selected task node in the task flow is not included in the integrated task flow, the task data management server 100 skips the processing of the selected task node and ends the second order determination processing. The selected task node is processed again after the processing of other task nodes has been executed.
[0109] In the first order determination process and the second order determination process, task groups having different order relationships are integrated.
[0110] The above-described method for generating an integrated workflow is merely an example and is not intended to be limiting. Any process may be used as long as it can integrate multiple tasks that have different order relationships between workflows, and can integrate a task that is not included in at least one workflow with at least one task that is executed before the task and / or one task that is executed after the task.
[0111] Next, a process of searching for business data using an integrated workflow will be described with reference to Fig. 11. Fig. 11 is a sequence diagram illustrating the flow of a process of searching for business data in the system according to the first embodiment.
[0112] A user uses the terminal 101 to access the business data management server 100 in order to search for business data (step S501).
[0113] The business data management server 100 presents a screen for accepting the designation of the integrated business flow (step S502). For example, a screen 1200 as shown in FIG.
[0114] The screen 1200 includes radio buttons 1201 and 1202, input fields 1203 and 1204, and an operation button 1205. The radio buttons 1201 and 1202 are used to select information used to specify an integrated business flow. The input fields 1203 and 1204 are used to input various identifiers. The operation button 1205 is used to instruct the display of an integrated business flow.
[0115] When using a business identifier, the user operates radio button 1201 to input the business identifier in input field 1203. When using a business flow identifier, the user operates radio button 1202 to input the business flow identifier in input field 1204.
[0116] When the user operates the operation button 1205, the terminal 101 transmits a display request including the identification information input by the user to the business data management server 100 (step S503).
[0117] The business data management server 100 searches for the corresponding integrated workflow and presents a screen displaying the integrated workflow (step S504).
[0118] When a display request includes a task identifier, the task data management server 100 refers to the integrated task flow DB 322 and searches for the integrated task flow metadata 600 that includes the task identifier.
[0119] If the display request includes a business flow identifier, the business data management server 100 refers to the business flow DB 321, searches for business flow metadata 500 that includes the business flow identifier, and acquires the business identifier from the business flow metadata 500. The business data management server 100 refers to the integrated business flow DB 322, and searches for integrated business flow metadata 600 that includes the acquired business identifier.
[0120] The business data management server 100 presents, for example, a screen 1300 as shown in FIG 13. The screen 1300 includes display fields 1301 and 1302.
[0121] The display field 1302 is a field that displays the business flow used when the integrated business flow was generated. The display field 1302 displays a business flow list 1320. The display field 1301 is a field that displays the integrated business flow. The display field 1301 displays a directed graph corresponding to the integrated business flow and operation buttons 1310. The operation buttons 1310 are operation buttons for setting search conditions for business flows.
[0122] When the operation button 1310 is operated, the business data management server 100 presents a screen 1400 as shown in Fig. 14. The screen 1400 includes setting fields 1401 and 1402.
[0123] The setting field 1401 is a field for selecting a node of an integrated workflow to be used in a search. The user selects the node to be used in a search by clicking on the node of the integrated workflow displayed in the setting field 1401.
[0124] The setting field 1402 is a field for setting the work nodes and the order to be used in the search from among the work nodes included in the integrated node. The setting field 1402 includes an input field 1410 and operation buttons 1411 and 1412. The input field 1410 is a field for inputting the identifier of the work node to be used in the search. In this embodiment, the work nodes are set in the order of execution. The operation button 1411 is an operation button for adding to the input field 1410. The operation button 1412 is an operation button for instructing a search for a business flow.
[0125] The user can set search conditions using the screen 1400. When the user operates the operation button 1412, the terminal 101 transmits a search request including the search conditions to the business data management server 100 (step S505).
[0126] The business data management server 100 executes a business flow search process (step S506). Here, the business flow search process will be described. Fig. 15 is a flowchart for explaining an example of the business flow search process executed by the business data management server 100 of the first embodiment.
[0127] The business data management server 100 identifies the business flow to be processed (step S601). Specifically, the business data management server 100 searches for the business flow metadata 500 in which the value of the business identifier 601 of the integrated business flow metadata 600 is stored in the business identifier 501.
[0128] The business data management server 100 sets a search workflow based on the search conditions (step S602). In the following description, the work node of the search workflow is referred to as a search work node.
[0129] The search workflow is generated from the operation nodes selected in the integrated workflow and the operation nodes selected in the integrated node.
[0130] The business data management server 100 starts loop processing of the business flows (step S603). Specifically, the business data management server 100 selects one business flow from the business flows identified in step S601.
[0131] The business data management server 100 determines whether the selected business flow includes all search operation nodes (step S604).
[0132] If the selected business flow does not include at least one search operation node, the business data management server 100 proceeds to step S608.
[0133] If the selected workflow includes all the search work nodes, the workflow data management server 100 compares the order relationship of the search work nodes in the search workflow with the order relationship of the search work nodes in the selected workflow (step S605).
[0134] The business data management server 100 determines whether the order relationships match based on the comparison result (step S606).
[0135] If the order relationships do not match, the business data management server 100 proceeds to step S608.
[0136] If the order relationships match, the business data management server 100 registers the selected business flow in the list (step S607), and then proceeds to step S608.
[0137] In step S608, the business data management server 100 determines whether or not the processing has been completed for all the business flows identified in step S601 (step S608).
[0138] If the processing has not been completed for all the business flows identified in step S601, the business data management server 100 returns to step S603 and executes the same processing.
[0139] When the processing has been completed for all the business flows identified in step S601, the business data management server 100 ends the business flow search processing.
[0140] This concludes the explanation of the workflow search process. Let us now return to the explanation of FIG.
[0141] The business data management server 100 presents the business flows registered in the list in the business flow search process as search results (step S507). The business data management server 100 presents, for example, a screen 1600 as shown in FIG. 16. The screen 1600 includes display fields 1601 and 1602. The display field 1601 is a field for displaying the searched business flow. The display field 1602 is a field for displaying the searched business flow. The display field 1602 includes an operation button 1610. The operation button 1610 is an operation button for instructing the display of business data 400 related to the searched business flow.
[0142] When the operation button 1610 is operated, the terminal 101 transmits a business data display request including the identification information of the business flow. The business data management server 100 refers to the business flow DB 321 to identify the business data 400 related to the business flow, obtains the identified business data 400 from the business data DB 320, and presents it to the user.
[0143] According to the first embodiment, the business data management server 100 can present to the user an integrated workflow for searching for business flows with different orders of work nodes and different work nodes included. By using the integrated workflow, the user can easily set the conditions for the business flow to be searched (search workflow).
[0144] The business data management server 100 can also search for business flows based on the search business flows and present business data related to the business flows, making it possible to analyze the work content and execution order for the purpose of improving business efficiency, etc. EXAMPLES
[0145] In the second embodiment, the method of setting a search workflow is different from that in the first embodiment. The second embodiment will be described focusing on the differences from the first embodiment.
[0146] The system configuration of the second embodiment is the same as that of the first embodiment. The configurations 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. The integrated workflow generation process of the second embodiment is the same as that of the first embodiment.
[0147] In the second embodiment, the method of setting the search workflow is different. Fig. 17 is a diagram showing an example of a screen presented by the business data management server 100 of the second embodiment. The screen 1400 of the second embodiment has some different setting items in the setting field 1402. Specifically, it includes an input field 1413 and an operation button 1414. The input field 1413 is a field for inputting the identifier of the working node to be excluded. The operation button 1414 is an operation button for adding the input field 1413.
[0148] FIG. 18 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.
[0149] If the selected workflow includes all search operation nodes in step S604, the workflow data management server 100 determines whether the selected workflow includes an operation node to be excluded (step S651).
[0150] If the selected business flow includes the operation node to be excluded, the business data management server 100 proceeds to step S608.
[0151] If the selected business flow does not include the operation node to be excluded, the business data management server 100 proceeds to step S605.
[0152] The integrated node includes at least one operation node that is not included in the workflow. Therefore, according to the second embodiment, it is possible to search for a workflow that does not include a specific operation.
[0153] The present invention is not limited to the above-mentioned embodiment, but includes various modified examples. For example, the above-mentioned embodiment describes the configuration in detail to easily explain the present invention, and the present invention is not necessarily limited to the configuration including all the described configurations. Also, it is possible to add, delete, or replace a part of the configuration of each embodiment with another configuration.
[0154] In addition, each of the above configurations, functions, processing units, processing means, etc. may be realized in part or in whole by hardware, for example, by designing them as integrated circuits. The present invention can also be realized by software program code that realizes 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 realizes the functions of the above-mentioned embodiments, and the program code itself and the storage medium storing it constitute the present invention. Examples of storage media for supplying such program code include flexible disks, CD-ROMs, DVD-ROMs, hard disks, SSDs (Solid State Drives), optical disks, magneto-optical disks, CD-Rs, magnetic tapes, non-volatile memory cards, ROMs, etc.
[0155] Furthermore, the program code for realizing 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, Java (registered trademark), etc.
[0156] Furthermore, the program code of the software that realizes the functions of the embodiments may be distributed over 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 out and execute the program code stored in the storage means or storage medium.
[0157] In the above-mentioned embodiment, the control lines and information lines are shown as those considered necessary for the explanation, and not all the control lines and information lines are shown in the product. All the components may be connected to each other. [Explanation of symbols]
[0158] 100 Business data management server 101 Terminal 102 locations 103 Network 110 Business data collection device 111 Data Generator 200, 300 processors 201, 301 Main storage 202, 302 Auxiliary storage device 203, 303 Network Interface 204, 304 Bus 210 Collection Department 220, 320 Business data DB 310 Management Department 311 Search Department 321 Business flow DB 322 Integrated Business Flow DB 400 Business Data 500 Business flow metadata 510, 610 node data 600 Integrated Business Flow Metadata 620 Integrated Node Data 1200, 1300, 1400, 1600 screen
Claims
1. A computer system comprising a processor, a storage device connected to the processor, and a network interface connected to the processor, For each workflow that defines a procedure for a plurality of tasks, business data acquired in a task based on the workflow is stored; Manage the workflow as a directed graph with each task as one task node; Comparing the multiple workflows; Based on the result of the comparison, an integrated node is generated by executing at least one of a process of integrating the plurality of tasks having different order relationships between the business flows and a process of integrating the task not included in at least one of the tasks executed before the task and the task executed after the task, A computer system characterized in that a directed graph consisting of at least one unintegrated work node and at least one integrated node is generated as an integrated business flow for searching the multiple business flows, and the computer system presents the generated graph to a user.
2. 2. The computer system of claim 1, presenting an interface for displaying the integrated workflow and accepting conditions for searching the workflow; The interface includes: a first setting field in which the user selects the operation node and the integrated node to be used for a search from among the operation nodes and the integrated nodes included in the integrated business flow; a second setting field in which the user selects the work nodes to be used in a search from among the work nodes included in the integrated node and specifies an order of the selected work nodes, The computer system comprises: generating a search workflow configured from search operation nodes which are the operation nodes selected in the first setting field and the second setting field; searching for the workflow that includes all of the search operation nodes and in which the order of the search operation nodes matches the order in the search operation flow, and presenting the workflow to the user; A computer system which outputs the business data of the business flow specified by the user.
3. 2. The computer system of claim 1, presenting an interface for displaying the integrated workflow and accepting conditions for searching the workflow; The interface includes: a first setting field in which the user selects the operation node and the integrated node to be used for a search from among the operation nodes and the integrated nodes included in the integrated business flow; a second setting field in which the user selects the work nodes to be used in a search from among the work nodes included in the integrated node and specifies an order of the selected work nodes; a third setting field for selecting the working nodes not to be used in the search from among the working nodes included in the integrated node, The computer system comprises: generating a search workflow configured from search operation nodes which are the operation nodes selected in the first setting field and the second setting field; searching for the workflow that does not include the work node selected in the third setting field, includes all of the search work nodes, and has the order of the search work nodes matching the order in the search workflow, and presenting the workflow to the user; A computer system which outputs the business data of the business flow specified by the user.
4. A search support method executed by a computer system, comprising: The computer system comprises: a processor, a storage device connected to the processor, and a network interface connected to the processor; For each workflow that defines a procedure for a plurality of tasks, business data acquired in a task based on the workflow is stored; Manage the workflow as a directed graph with each task as one task node; The search support method includes: a step of the computer system comparing the plurality of workflows; a step in which the computer system generates an integrated node by executing at least one of a process of integrating the plurality of tasks having different order relationships between the business flows based on a result of the comparison, and a process of integrating a task not included in at least one of the business flows with at least one task executed before the task and one executed after the task; a step in which the computer system generates a directed graph consisting of at least one unintegrated work node and at least one integrated node as an integrated business flow for searching the multiple business flows, and presents the generated directed graph to a user.
5. A search support method according to claim 4, the computer system includes a step of presenting an interface in which the integrated workflow is displayed and which accepts conditions for searching the workflow, The interface includes: a first setting field in which the user selects the operation node and the integrated node to be used for a search from among the operation nodes and the integrated nodes included in the integrated business flow; a second setting field in which the user selects the work nodes to be used in a search from among the work nodes included in the integrated node and specifies an order of the selected work nodes, The search support method includes: a step of generating a search workflow configured by the computer system from search work nodes which are the work nodes selected in the first setting field and the second setting field; a step of the computer system searching for the workflow that includes all of the search work nodes and in which the order of the search work nodes matches the order in the search work flow, and presenting the search work flow to the user; a step of outputting, by the computer system, the business data of the business flow specified by the user.
6. A search support method according to claim 4, the computer system includes a step of presenting an interface in which the integrated workflow is displayed and which accepts conditions for searching the workflow, The interface includes: a first setting field in which the user selects the operation node and the integrated node to be used for a search from among the operation nodes and the integrated nodes included in the integrated business flow; a second setting field in which the user selects the work nodes to be used in a search from among the work nodes included in the integrated node and specifies an order of the selected work nodes; a third setting field for selecting the working nodes not to be used in the search from among the working nodes included in the integrated node, The search support method includes: a step of generating a search workflow configured by the computer system from search work nodes which are the work nodes selected in the first setting field and the second setting field; a step of the computer system searching for the workflow that does not include the work node selected in the third setting field, includes all of the search work nodes, and has the order of the search work nodes matching the order in the search workflow, and presenting the workflow to the user; a step of outputting, by the computer system, the business data of the business flow specified by the user.
Citation Information
Patent Citations
Oriented graph creation device, oriented graph creation method, and oriented graph creation program
JP2012194708A
Graph generation method, information processing apparatus and graph generation program
JP2019117442A