The present invention relates to a visualization display device, a visualization display method, and a visualization display program.
In order to realize effective business improvement, it is important for business analysts (hereinafter also referred to as “users”) to correctly ascertain an actual business situation. In the past, as a method of accurately and efficiently ascertaining an actual business situation, there has been a method of recording content of operations performed on a terminal by a person in charge of business as an operation log and displaying the content as a flowchart in the order of operations executed for each corresponding case and by superimposing operations of the same type (see, for example, NPL 1). In addition, in order to compare differences in operations for each case, lining up and displaying the sequence of operations in the order of operations executed for each case can also be considered. Here, the term “operation” refers to an event that causes a change on a screen by clicking a graphical user interface (GUI) component or inputting a value.
For example, in a case where a business analyst attempts to find a location to which robotic process automation (hereinafter referred to as “RPA”) can be applied from a flowchart, it is said that it is effective for the business analyst to first find a location where RPA can be applied effectively, for example, a common and repeated operation procedure (hereinafter referred to as a “main flow”) among operations for each case. Therefore, collecting operations performed for business execution as logs and visualizing an operation procedure in the form of a flowchart in which operations of the same type are treated as one node and the operations are connected by edges is said to be an effective visualization method for finding the main flow.
However, in the related art described above, it is not possible to easily specify the main flow in business analysis. This is because there are a wide variety of operation procedures performed by a person in charge of business, and thus in a case where all the operation procedures are visualized without distinction, it is difficult to specify which operation procedure is the main flow without knowledge of target business or knowledge of how to view and analyze a flowchart.
In order to solve the above problem and achieve the object, according to the present invention, there is provided a visualization display device including: an acquisition unit configured to acquire an operation log; an alignment unit configured to generate an operation sequence in units of operations arrayed in a time series order for each case on the basis of the operation log and to align the operation sequence in units of operations; and a visualization unit configured to specify operation types that appear with a threshold or more at the same position in the operation sequence in units of operations of each case as operation types of a main flow on the basis of the aligned operation sequence in units of operations and to arrange and visualize nodes corresponding to the operation types of the main flow in a time series order on one axis.
In addition, according to the present invention, there is provided a visualization display method which is executed by a visualization display device, the method including: an acquisition step of acquiring an operation log; an alignment step of generating an operation sequence in units of operations arrayed in a time series order for each case on the basis of the operation log and aligning the operation sequence in units of operations; and a visualization step of specifying operation types that appear with a threshold or more at the same position in the operation sequence in units of operations of each case as operation types of a main flow on the basis of the aligned operation sequence in units of operations and arranging and visualizing nodes corresponding to the operation types of the main flow in a time series order on one axis.
In addition, according to the present invention, there is provided a visualization display program causing a computer to execute: an acquisition step of acquiring an operation log; an alignment step of generating an operation sequence in units of operations arrayed in a time series order for each case on the basis of the operation log and aligning the operation sequence in units of operations; and a visualization step of specifying operation types that appear with a threshold or more at the same position in the operation sequence in units of operations of each case as operation types of a main flow on the basis of the aligned operation sequence in units of operations and arranging and visualizing nodes corresponding to the operation types of the main flow in a time series order on one axis.
In the present invention, it is possible to easily specify a main flow in business analysis.
Hereinafter, an embodiment of a visualization display device, a visualization display method, and a visualization display program according to the present invention will be described in detail with reference to the accompanying drawings. Meanwhile, the present invention is not limited by an embodiment to be described below.
Hereinafter, processing of a visualization display system according to an embodiment (appropriately, the present embodiment), the configuration of a visualization display device 10, the details of the processing, and a flow of the processing will be described in order, and finally the effects of the present embodiment will be described.
Processing of a visualization display system (appropriately, the present system) according to the present embodiment will be described below. Processing of the present system will be described below in comparison with the related art.
(1. Conventional visualization display processing) As described above, it is effective for a business analyst to find a main flow which is expected to have a high operation frequency and a high improvement effect among operations for each case as a location where the application of RPA is effective. Therefore, it is called a visualization method effective for finding a main flow to collect operations performed for business execution as a log and to visualize the operation procedure in the form of a flowchart with operations of the same type as one node and the operations connected by edges as shown in
Further, in a case where a flowchart is configured with operations of the same type as shown in
In addition, as a method of extracting a main flow from the operation log, there is a method of finding a main flow from the operation log by preparing operation sequences (operation sequences lined up in the order in which operations are executed) for each case from the operation log acquired from a terminal in a business which is performed repeatedly, specifying the type of operation sequence and the number of occurrences, and setting an operation sequence equal to or more than a threshold as a main flow (flow of operations occurring frequently) on the basis of a threshold set by a user and those that are not as exceptional flows (flows of exceptional operations).
In the above method, it is assumed that, for example, there are 100 operation sequences which are divided into seven types. When the user sets the threshold to 2, it is a method of determining two types having the highest number of occurrences among the seven types of operation sequences as the main flow and the remaining five types as exceptional flows. However, since there are various types of operations in the logs acquired in units of operations, it is unlikely that there is a completely coincident operation sequence even if an operation sequence is created for each case from the operation log and a main flow is extracted using the above method. Therefore, in the above method, it is difficult to classify the operation sequences in the first place, and the main flow cannot be extracted (problem c).
In addition, there is also a method of observing the operation sequence of a plurality of cases in the order of appearance of operations, and extracting the operations that appear in cases of a threshold or more in order and in consideration of the immediately preceding operation type (see
For example, in
In visualization display processing according to the present embodiment, the operation sequence (operations in the order of operation time) for each case related to the same work is used as an input, and the operation logs are aligned so that operations of the same type are arranged in the same sequence insofar as possible on the basis of a method of multiple sequence alignment. Finally, for all the cases, operations that appear with a threshold or more are extracted as the main flow, and operations less than the threshold are extracted as operations other than the main flow, so that these operations are visualized distinctly. That is, in the visualization display processing according to the present embodiment, in business which is performed repeatedly for each case, operation procedures performed for each case are roughly the same as each other, but in a case where a wide variety of operations occur in the middle, the same operation occurs multiple times in one case, or operations are missing in comparison with other cases, the main flow can be extracted from a set of operations for each of the plurality of cases in the same business on the basis of the method of multiple sequence alignment, and the main flow and the other operation procedures can be ascertained distinctly.
Therefore, in the visualization display processing according to the present embodiment, the main flow can be extracted in consideration of all the cases even if there are a variety of types and orders of operations that have occurred in the cases. In addition, in the visualization display processing according to the present embodiment, even if operations of the same type are included multiple times in the case, a process in which the order thereof is expressed can be drawn. Further, in the visualization display processing according to the present embodiment, attention can be paid only to the main flow by performing highlighting and visualization or by setting a threshold and visualizing only data that appears with a threshold or more. From the above, the visualization display processing according to the present embodiment contributes to solving the above problems a to d.
The configuration of the visualization display device 10 according to the embodiment will be described in detail with reference to
The input unit 11 takes charge of input of various types of information to the visualization display device 10. For example, the input unit 11 is realized by a mouse, a keyboard, or the like, and receives input of setting information or the like to the visualization display device 10.
The output unit 12 takes charge of output of various types of information from the visualization display device 10. For example, the output unit 12 is realized by a display or the like, and outputs setting information or the like stored in the visualization display device 10. In addition, the output unit 12 displays the visualization result output by a visualization unit 15c of the control unit 15 to be described later.
The communication unit 13 takes charge of data communication with another device. For example, the communication unit 13 performs data communication with each communication device. In addition, the communication unit 13 can perform data communication with an operator's terminal (not shown).
The storage unit 14 stores various types of information referred to when the control unit 15 operates and various types of information acquired when the control unit 15 operates. The storage unit 14 has an operation log storage unit 14a. Here, the storage unit 14 can be realized, for example, by a semiconductor memory element such as a random access memory (RAM) or a flash memory, a storage device such as a hard disk or an optical disc, or the like. Meanwhile, in the example of
An example of an operation log stored in the operation log storage unit 14a will be described with reference to
The control unit 15 takes charge of control of the visualization display device 10 as a whole. The control unit 15 includes an acquisition unit 15a, an alignment unit 15b, and the visualization unit 15c. Here, the control unit 15 is, for example, an electronic circuit such as a central processing unit (CPU) or a micro processing unit (MPU), or an integrated circuit such as an application specific integrated circuit (ASIC) or a field programmable gate array (FPGA).
The acquisition unit 15a acquires an operation log. For example, the acquisition unit 15a acquires an operation log including information on the operation location. Here, the information on the operation location is window information related to a user's operation, a GUI component name, coordinates, etc., but there is no particular limitation thereto. In addition, the acquisition unit 15a acquires an operation time, a case ID, and an input value. On the other hand, the acquisition unit 15a stores the acquired operation log in the operation log storage unit 14a of the storage unit 14. Meanwhile, the acquisition unit 15a may output the acquired operation log to the alignment unit 15b.
The alignment unit 15b generates an operation sequence in units of operations arrayed in a time series order for each case on the basis of the operation log, and aligns the operation sequence in units of operations. For example, the alignment unit 15b specifies operations of the same type by extracting the information on the operation location from the operation log, aligns the operation sequence in units of operations through pairwise alignment, generates a distance matrix for each operation sequence in units of operations, generates a distance vector using the distance matrix, and further aligns the operation sequence through multiple sequence alignment in the order of the operation sequence in units of operations having the smaller distance vector.
That is, as alignment processing, the alignment unit 15b (1) creates a distance matrix using the difference caused by pairwise alignment of case pairs, and (2) generates a distance vector for each case from the distance matrix, to thereby perform multiple sequence alignment in order from the case where the distance between vectors is short. Here, the pairwise alignment involves aligning two sequences, and the multiple sequence alignment involves aligning three or more sequences, but the alignment processing to be executed is not particularly limited.
In addition, the alignment unit 15b outputs the alignment result to the visualization unit 15c. Meanwhile, the alignment unit 15b may store the alignment result in the storage unit 14.
The visualization unit 15c specifies operation types that appear with a threshold or more at the same position in the operation sequence in units of operations for each case, as the operation type of the main flow, on the basis of the aligned operation sequence in units of operations, and arranges and visualizes nodes corresponding to the operation type of the main flow in a time series order on one axis. In addition, the visualization unit 15c arranges and visualizes nodes corresponding to operation types other than the operation type of the main flow in a time series order at positions different from on one axis where the nodes corresponding to the operation type of the main flow are arranged. Further, the visualization unit 15c sets a reference value (threshold′ of operation) of an operation to be visualized, arranges nodes corresponding to the operation type of the main flow in a time series order on one axis, among the nodes corresponding to the operation types that appear with the reference value or higher of the operation, and arranges and visualizes the nodes corresponding to the operation types other than the operation type of the main flow in a time series order at positions different from on one axis.
In addition, the visualization unit 15c outputs the visualization result to the output unit 12. Meanwhile, the visualization unit 15c may store the visualization result in the storage unit 14.
The details of processing according to the present embodiment will be described with reference to
Alignment processing will be described with reference to
The ID creation processing will be described with reference to
The operation sequence generation processing will be described with reference to
The operation sequence classification processing will be described with reference to
The sequence alignment processing will be described with reference to
The alignment unit 15b uses an operation sequence for each operation sequence type and performs sequence alignment of operation sequences using a progressive alignment method which is one of multiple sequence alignment methods. Specifically, first, the alignment unit 15b applies a sequence alignment method (pairwise alignment) to two operation sequences, extracts a difference score between these operation sequences, and stores it in a distance matrix (procedure 1). Second, the alignment unit 15b calculates the distance matrix of the operation sequences as shown in
The details of procedure 1 of the sequence alignment processing will be described with reference to
For example, the alignment unit 15b performs procedure 1 using a score calculation recurrence formula shown in the following Formula (1).
In Formula (1), (i, j) represents the coordinates of (column, row) in the table of
In
Similarly, in a case where the score on the path of F(2, 2) is calculated, the relation of s(2, 2)=1 is established because the operation ID of “operation sequence 2” (i=2) is “1,” the operation ID of “operation sequence 4” (j=2) is “1,” and the operations match. Therefore, as shown in the following Formula (3), F(2, 2)=2 is calculated by obtaining the maximum value as a solution.
The alignment unit 15b executes the sequence alignment of “operation sequence 2” and “operation sequence 4” by calculating the scores on the above paths for all the cells and performing a process of finding a path for maximizing the score among the paths from the upper left cell to the lower right cell in
The alignment unit 15b compares the aligned operation ID sequences, calculates the number of operation IDs that do not match at the compared positions as a difference score, and stores it in the distance matrix. That is, when the aligned operation ID sequences of “operation sequence 2” and “operation sequence 4” are compared with each other, the alignment unit 15b calculates the difference score as “4” and stores it in the distance matrix because four operation IDs are different in the corresponding sequences.
The details of procedure 2 of the sequence alignment processing will be described with reference to
In
Next, the alignment unit 15b creates a tree diagram on the basis of a hierarchical clustering method using the distance vector for each operation sequence (see
In
The details of procedure 3 of the sequence alignment processing will be described with reference to
In
The position ID assignment processing will be described with reference to
The visualization processing will be described with reference to
Visualization processing of operations of the main flow will be described with reference to
(2-2. Visualization Processing of Operations Other than Main Flow)
Visualization processing of operations other than the main flow will be described with reference to
(2-3. Visualization Processing Using Threshold′) The visualization processing using a threshold′ will be described with reference to
In
The flow of processing according to the present embodiment will be described in detail with reference to
The overall flow of visualization display processing will be described with reference to
First, the acquisition unit 15a of the visualization display device 10 executes the operation log acquisition processing (step S101). Next, the alignment unit 15b of the visualization display device 10 executes the alignment processing (step S102). The visualization unit 15c of the visualization display device 10 then executes the visualization processing (step S103) and ends the processing. Meanwhile, steps S101 to S103 described above can also be executed in a different order. In addition, some of steps S101 to S103 described above may be omitted.
First, the operation log acquisition processing performed by the acquisition unit 15a will be described. In the operation log acquisition processing, the acquisition unit 15a collects and accumulates an operation log (information composed of “operation time, case ID, and operation location”) from a terminal device. Meanwhile, the details of a flow of operation log acquisition processing will be described later in (2. Flow of operation log acquisition processing).
Second, the alignment processing performed by the alignment unit 15b will be described. In the alignment processing, the alignment unit 15b executes the following processes. First, the alignment unit 15b uses information on the operation log to generate an operation ID for identifying the operation. Next, the alignment unit 15b prepares an operation sequence in which operation IDs are lined up in the order of operation time for each case ID. Subsequently, the alignment unit 15b classifies the operation sequence into operation sequence types and assigns operation sequence IDs. The alignment unit 15b then extracts one operation sequence for each operation sequence type, and performs the alignment of the operation sequences using the method of multiple sequence alignment. Finally, the alignment unit 15b acquires the position ID and operation ID of the operation after alignment, and reflects them in the operation sequence for each case ID. Meanwhile, the details of a flow of alignment processing will be described later in (3. Flow of alignment processing).
Third, the visualization processing performed by the visualization unit 15c will be described. In the visualization processing, the visualization unit 15c executes the following processes. First, the visualization unit 15c uses the alignment result to extract position IDs that appear with a threshold or more from the entire case and operation IDs associated with the position IDs, and highlights and visualizes them by lining up the operations on one axis (main flow). Next, the visualization unit 15c uses the alignment result to extract position IDs that appear less than a threshold from the entire case and operation IDs associated with the position IDs. The visualization unit 15c then displays adjacent position IDs above and below (in a case where the main flow is visualized from left to right) or to the left and right of (in a case where the main flow is visualized from top to bottom) the visualized main flow, and connects edges on the basis of the order of position IDs for each case. Meanwhile, the details of a flow of visualization processing will be described later in (4. Flow of visualization processing).
A flow of operation log acquisition processing will be described with reference to
First, in a case where a user stops the process or drops a personal computer (PC) terminal (step S201: Yes), the acquisition unit 15a ends the process. On the other hand, in a case where the user has neither stop the process nor dropped the PC terminal (step S201: No), the acquisition unit 15a acquires an operation log (step S202). Next, the acquisition unit 15a accumulates the operation log by storing the acquired operation log in the operation log storage unit 14a (step S203), and proceeds to the process of step S201.
A flow of alignment processing will be described with reference to
First, the alignment unit 15b assigns an operation ID using information in the operation log of the operation log storage unit 14a (step S301). At this time, the alignment unit 15b may assign an operation ID using information in the operation log acquired by the acquisition unit 15a. Next, the alignment unit 15b generates an operation sequence for each case from the operation log (step S302). Subsequently, the alignment unit 15b classifies the operation sequence for each case into operation sequence types (step S303). At this time, the alignment unit 15b determines the classification into the operation sequence types by whether the operation sequence completely matches. Meanwhile, the amount of calculation of the process of step S304 can be reduced by executing the process of step S303.
The alignment unit 15b then performs multiple sequence alignment using the operation sequence for each operation sequence type (step S304). Here, in a case where progressive alignment which is one of the multiple sequence alignment methods is used, the alignment unit 15b creates a distance matrix of the operation sequence from the calculation of the sequence alignment of the operation sequence, creates a tree diagram from the distance matrix of the operation sequence, and aligns the operation sequence in the order of shortest distance on the tree diagram. Meanwhile, the alignment unit 15b may use a sequential improvement method, simulated annealing, or the like as methods other than the progressive alignment.
Finally, the alignment unit 15b acquires the position ID and operation ID of the operation after alignment, reflects them in the operation sequence for each case (step S305), and ends the process.
A flow of visualization processing will be described with reference to
First, in a case where a threshold′ is set (step S401: Yes), the visualization unit 15c sets the threshold′, extracts only position IDs and operation IDs that appear with the threshold′ or more for all the cases (step S404), and proceeds to the process of step S402. On the other hand, in a case where the threshold′ is not set (step S401: No), the visualization unit 15c sets the threshold, and highlights and visualizes position IDs and operation IDs (operations of the main flow) that appear with the threshold or more for all the cases by lining up the operation IDs on one axis in the order of the position IDs (step S402). At this time, the visualization unit 15c may change the color of the node to a conspicuous color or increase the size of the node as a method of highlighting the main flow.
The visualization unit 15c then visualizes position IDs and operation IDs (operations other than the main flow) that do not satisfy the threshold for all the cases on the visualization result visualized in the process of step S402, with these IDs shifted from one axis (step S403), and ends the process.
First, in the visualization display processing according to the present embodiment described above, an operation log is acquired, an operation sequence in units of operations arrayed in a time series order for each case is generated on the basis of the operation log, the operation sequence in units of operations is aligned, operation types that appear with a threshold or more at the same position in the operation sequence in units of operations of each case are specified as the operation types of the main flow on the basis of the aligned operation sequence in units of operations, and nodes corresponding to the operation types of the main flow are arranged and visualized in a time series order on one axis. Therefore, in the present processing, it is possible to easily specify a main flow in business analysis.
Second, in the visualization display processing according to the present embodiment described above, operations of the same type are specified by extracting information on the operation location from the operation log, the operation sequence in units of operations is aligned through pairwise alignment, the distance matrix for each operation sequence in units of operations is generated, the distance vector is generated using the distance matrix, and the operation sequence is further aligned through multiple sequence alignment in the order of the operation sequence in units of operations having the smaller distance vector. Therefore, in the present processing, the main flow can be easily and effectively specified in business analysis.
Third, in the visualization display processing according to the present embodiment described above, the reference value of an operation to be visualized is further set, nodes corresponding to the operation type of the main flow are arranged in a time series order on one axis, among the nodes corresponding to the operation types that appear with the reference value or higher of the operation, and the nodes corresponding to the operation types other than the operation type of the main flow are arranged and visualized in a time series order at positions different from on one axis. In the present processing, the main flow and flows other than the main flow desired to be visualized can be easily and effectively specified in business analysis.
Hereinafter, processing of a visualization display system according to a modification example of the embodiment (appropriately, the present modification example), the configuration of the visualization display device 10, the details of processing, and the flow of processing will be described in order, and finally the effects of the present modification example will be described. Meanwhile, the same configurations and processes as in the above-described embodiment will not be described.
Processing of the visualization display system according to the modification example of the embodiment will be described below. Processing of the above system will be described below in comparison with the related art.
The conventional visualization display processing also has the following problems in addition to the problems described in the processing of the visualization display system according to the embodiment. First, in a case where improvement of business centered on PC operations is performed in business analysis, business analysis is performed from the viewpoint of which work (specifically, which operation is performed on which screen) should be improved, but when the process is visualized at the granularity of operations, information is too detailed and business analysis is difficult, whereby business analysis cannot be performed efficiently (problem e). In addition, when processing is performed using a set of operations for each case, there is a problem in that as the number of cases increase, the processing time due to sequence alignment for the set of operations included in the case increases enormously. (problem f).
In visualization display processing according to the present modification example, the operation sequence (operations in the order of operation time) for each case related to the same work is used as an input, and alignment is performed at the granularity of windows on the basis of the method of multiple sequence alignment, and then operation locations that appear in each window are aligned. Finally, for all the cases, operations that appear with a threshold or more are extracted as the main flow, and operations less than the threshold are extracted as operations other than the main flow, so that these operations are visualized distinctly. That is, in the visualization display processing according to the present modification example, in addition to the processing of the present embodiment, a set of operations for each case is first processed at the granularity of screens, the granularity of operations for each screen is next processed to reduce the processing time, the main flow is visualized at the granularity of screens and the granularity of operations, and thus it is possible to efficiently specify a screen to be improved by introducing RPA or the like and an operation in the screen.
Therefore, in the visualization display processing according to the present modification example, the process speed can be improved in addition to the processing of the present embodiment. In addition, in the visualization display processing according to the present modification example, it is possible to ascertain the main flow at the granularity of windows (screens) and the granularity of operations, making it easier to select screens and operations to be improved. From the above, the visualization display processing according to the present modification example contributes to solving the above problems e and f.
The configuration of the visualization display device 10 according to the present modification example will be described in detail. The configuration of the visualization display device 10 according to the present modification example is the same as that of the visualization display device 10 according to the present embodiment, and the processing of the input unit 11, the output unit 12, and the communication unit 13 of the visualization display device 10 according to the present modification example is the same as that of the visualization display device 10 according to the present embodiment, so the description thereof will be omitted. Hereinafter, only the storage unit 14 and the control unit 15 will be described, and description common to the storage unit 14 and the control unit 15 according to the present embodiment will be omitted.
The storage unit 14 stores various types of information referred to when the control unit 15 operates and various types of information acquired when the control unit 15 operates. The storage unit 14 has the operation log storage unit 14a.
An example of an operation log stored in the operation log storage unit 14a will be described with reference to
The control unit 15 takes charge of control of the visualization display device 10 as a whole. The control unit 15 includes an acquisition unit 15a, an alignment unit 15b, and the visualization unit 15c. Meanwhile, the processing of the acquisition unit 15a is common to the processing of the present embodiment, and thus the description thereof will be omitted.
The alignment unit 15b generates an operation sequence in units of windows arrayed in a time series order for each case, and aligns the operation sequence in units of windows.
The visualization unit 15c specifies window operations that appear with a threshold or more at the same position in the operation sequence in units of windows of each case as windows of the main flow on the basis of the aligned operation sequence in units of windows, arranges the nodes corresponding to the windows of the main flow in a time series order on one axis, arranges the nodes corresponding to windows other than the windows of the main flow in a time series order at positions different from on the one axis, and superimposes and visualizes the nodes corresponding to the operations of each window. In addition, the visualization unit 15c further sets a reference value of windows to be visualized, arranges the nodes corresponding to the windows of the main flow in a time series order on one axis, among the nodes corresponding to windows that appear with the reference value or higher of the window, and arranges and visualizes the nodes corresponding to the windows other than the main flow in a time series order at positions different from on the one axis.
The details of processing according to the present modification example will be described with reference to
The alignment processing will be described with reference to
The ID creation processing will be described with reference to
In addition, the alignment unit 15b extracts the window ID and operation ID for each case from the operation log. In
The operation sequence generation processing will be described with reference to
The operation sequence classification processing will be described with reference to
The sequence alignment processing 1 will be described with reference to
The alignment unit 15b uses an operation sequence for each operation sequence type and performs sequence alignment of operation sequences using a progressive alignment method which is one of multiple sequence alignment methods. Specifically, first, the alignment unit 15b applies a sequence alignment method (pairwise alignment) to two operation sequences, extracts a difference score between these operation sequences, and stores it in a distance matrix (procedure 1). Second, the alignment unit 15b calculates the distance matrix of the operation sequences as shown in
The details of procedure 1-1 of sequence alignment processing 1 will be described with reference to
For example, the alignment unit 15b performs procedure 1-1 using the score calculation recurrence formula shown in Formula (1) described in the sequence alignment processing according to the embodiment.
In Formula (1), (i, j) represents the coordinates of (column, row) in the table at the lower part of
In
The alignment unit 15b executes the sequence alignment of “operation sequence 1” and “operation sequence 2” by calculating the score on the above path for all the cells and performing a process of finding a path for maximizing the score among the paths from the upper left cell to the lower right cell in
The alignment unit 15b then compares the aligned operation ID sequence, calculates the number of window IDs that do not match at the compared positions as a difference score, and stores it in the distance matrix. That is, when the window ID sequences of the aligned “operation sequence 1” and “operation sequence 2” are compared with each other, one window ID differs in the corresponding sequence, and thus the difference score is calculated as “1” and stored in the distance matrix.
The details of procedure 1-2 of sequence alignment processing 1 will be described with reference to
For example, the alignment unit 15b performs procedure 1-2 using the score calculation recurrence formula shown in Formula (1) described in the sequence alignment processing according to the embodiment.
In Formula (1), (i, j) represents the coordinates of (column, row) in the table at the lower part of
In
The alignment unit 15b executes sequence alignment of “operation sequence 1” and “operation sequence 2” in the same way as the above procedure 1-1. As a result, “operation sequence 1” is aligned as “-, A, C, B, D, E, A” and “operation sequence 2” is aligned as “E, A, C, B, D, E, A,” the difference score is calculated as “1.”
The details of procedure 2 of the sequence alignment processing 1 will be described with reference to
In
Next, the alignment unit 15b creates a tree diagram on the basis of a hierarchical clustering method using the distance vector for each operation sequence (see
In
The details of procedure 3 of the sequence alignment processing 1 will be described with reference to
In
The position ID assignment processing will be described with reference to
In addition, the alignment unit 15b assigns a position ID (window) to the original operation log. In
The ID association processing will be described with reference to
The sequence alignment processing 2 will be described with reference to
The visualization processing will be described with reference to
The window visualization processing will be described with reference to
For example, in a case where the position IDs (windows) that appear at a threshold of 80% for all the cases are visualized, the visualization unit 15c extracts position IDs (windows) and window IDs that appear in seven or more cases as windows of the main flows because there are eight cases in the example of
On the other hand, the visualization unit 15c extracts “E” that does not appear in seven or more cases as a window other than the main flow. In addition, the visualization unit 15c visualizes the window at this time by shifting it from the main flow.
The operation visualization processing will be described with reference to
For example, in a case where the position IDs (windows) and position IDs (operations) that appear at a threshold of 80% for all the cases are visualized, as shown in
A flow of processing according to the present modification example will be described in detail with reference to
A flow of alignment processing will be described with reference to
First, the alignment unit 15b assigns a window ID using information in the operation log of the operation log storage unit 14a (step S501). Second, the alignment unit 15b uses the window ID to generate an operation sequence for each case (step S502). Third, the operation sequence for each case is classified into operation sequence types, and an operation sequence ID is assigned (step S503). At this time, the alignment unit 15b determines the classification into the operation sequence types by whether the operation sequence completely matches.
Fourth, the alignment unit 15b then performs multiple sequence alignment using the operation sequence for each operation sequence type (step S504). Here, in a case where progressive alignment which is one of the multiple sequence alignment methods is used, the alignment unit 15b creates a distance matrix of the operation sequence from the calculation of the sequence alignment of the operation sequence, creates a tree diagram from the distance matrix of the operation sequence, and aligns the operation sequence in the order of shortest distance on the tree diagram. Meanwhile, the alignment unit 15b may use a sequential improvement method, simulated annealing, or the like as methods other than the progressive alignment.
Fifth, the alignment unit 15b acquires the position ID (window) and window ID of the operation after alignment, and reflects them in the operation sequence for each case (step S505). Sixth, the alignment unit 15b uses the operation ID to generate an operation sequence for each case, for each position ID (window) (step S506). Seventh, the alignment unit 15b classifies the operation sequence for each case into operation sequence types (step S507). Eighth, multiple sequence alignment is performed using the operation sequence for each operation sequence type (step S508). Ninth, the alignment unit 15b acquires the position ID (window) and window ID of the operation after alignment, reflects them in the operation sequence for each case (step S509), and ends the process.
A flow of visualization processing will be described with reference to
First, in a case where the threshold′ is set (step S601: Yes), the visualization unit 15c sets the threshold′, extracts only position IDs (windows), window IDs, position IDs (operations), and operation IDs that appear with the threshold′ or more for all the cases (step S606), and proceeds to the process of step S602.
On the other hand, in a case where a threshold′ is not set (step S601: No), the visualization unit 15c sets the threshold, and highlights and visualizes position IDs (windows) and window IDs that appear with the threshold or more for all the cases by lining up the window IDs on one axis in the order of the position IDs (windows) (step S602). At this time, the visualization unit 15c may change the color of the node to a conspicuous color or increase the size of the node as a method of highlighting the main flow. Subsequently, the visualization unit 15c visualizes the position IDs (windows) and window IDs that do not satisfy the threshold for all the cases on the visualization result visualized in the process of step S602, with these IDs shifted from one axis (step S603).
In addition, the visualization unit 15c sets a threshold, and highlights and visualizes the position IDs (operations) and operation IDs that appear with the threshold or more for all the cases for each position ID (window) by lining up the window IDs on one axis in the order of the position IDs (operations) within the position ID (window) (step S604). The position IDs (operations) and operation IDs that do not satisfy the threshold for all the cases for each position ID (window) are visualized within the position ID (window) on the visualization result visualized in the process of step S604, with these IDs shifted from one axis (step S605), and the process ends.
First, the visualization display processing according to the present modification example described above includes further generating an operation sequence in units of windows arrayed in a time series order for each case and aligns the operation sequence in units of windows, specifying window operations that appear with a threshold or more at the same position in the operation sequence in units of windows of each case as windows of the main flow on the basis of the aligned operation sequence in units of windows, arranging nodes corresponding to the windows of the main flow in a time series order on one axis, arranging nodes corresponding to windows other than the windows of the main flow in a time series order at positions different from on the one axis, and superimposing and visualizing nodes corresponding to operations of each window. Therefore, in the present processing, the main flow and flows other than the main flow can be easily specified in business analysis without spending processing time, and screens and operation to be improved can be easily selected.
Second, the visualization display processing according to the present modification example described above includes further setting a reference value of windows to be visualized, arranging the nodes corresponding to the windows of the main flow in a time series order on one axis, among the nodes corresponding to windows that appear with the reference value or higher of the window, and arranging and visualizing the nodes corresponding to the windows other than the main flow in a time series order at positions different from on the one axis. Therefore, in the present processing, the main flow and flows other than the main flow desired to be visualized can be easily specified in business analysis without spending processing time, and screens and operation to be improved can be easily selected.
Each component of each device shown according to the above embodiment is functionally conceptual, and does not necessarily have to be physically configured as shown in the drawing. That is, the specific form of distribution and integration of each device not limited to that shown in the drawing, and all or part of them can be functionally or physically distributed and integrated in arbitrary units according to various loads and usage conditions. Further, All or any part of processing functions which are performed by each device can be realized by a CPU and a program analyzed and executed by the CPU, or realized as hardware using wired logic.
In addition, among the processes described in the above embodiment, all or part of the processes described as being performed automatically can be manually performed, or all or part of the processes described as being performed manually can also be performed automatically using known methods. In addition, information including processing procedures, control procedures, specific names, and various types of data and parameters shown in the above document and drawings can be arbitrarily changed unless otherwise specified.
In addition, It is also possible to create a program in which the processing executed by the visualization display device 10 described in the above embodiment is described in a computer-executable language. In this case, the same effects as in the above embodiment can be obtained by a computer executing a program. Further, such a program may be recorded in a computer-readable recording medium, and the program recorded in this recording medium may be read and executed by a computer to realize the same processing as in the above embodiment.
The memory 1010 includes a read only memory (ROM) 1011 and a RAM 1012 as illustrated in
Here, as illustrated in
In addition, various types of data described in the above embodiment are stored as program data in, for example, the memory 1010 or the hard disk drive 1090. The CPU 1020 reads out the program module 1093 or the program data 1094 stored in the memory 1010 or the hard disk drive 1090 to the RAM 1012 as necessary, and executes various processing procedures.
Meanwhile, the program module 1093 or the program data 1094 related to the program is not limited to being stored in the hard disk drive 1090, and may be stored in, for example, a removable storage medium and read out by the CPU 1020 through a disk drive or the like. Alternatively, the program module 1093 or the program data 1094 related to the program may be stored in another computer connected through a network (such as a local area network (LAN) or a wide area network (WAN)) and read out by the CPU 1020 through the network interface 1070.
The above-described embodiments and modifications thereof are included in the claims and their equivalents as well as in the technique disclosed by the present application.
| Filing Document | Filing Date | Country | Kind |
|---|---|---|---|
| PCT/JP2021/023827 | 6/23/2021 | WO |