WO2022259559A1 - 判定装置、判定方法および判定プログラム - Google Patents

判定装置、判定方法および判定プログラム Download PDF

Info

Publication number
WO2022259559A1
WO2022259559A1 PCT/JP2021/022418 JP2021022418W WO2022259559A1 WO 2022259559 A1 WO2022259559 A1 WO 2022259559A1 JP 2021022418 W JP2021022418 W JP 2021022418W WO 2022259559 A1 WO2022259559 A1 WO 2022259559A1
Authority
WO
WIPO (PCT)
Prior art keywords
log
rule
events
division position
attribute
Prior art date
Application number
PCT/JP2021/022418
Other languages
English (en)
French (fr)
Inventor
史拓 横瀬
公雄 土川
佐也香 八木
有記 卜部
泰輔 若杉
晴夫 大石
Original Assignee
日本電信電話株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to JP2023526837A priority Critical patent/JPWO2022259559A1/ja
Priority to PCT/JP2021/022418 priority patent/WO2022259559A1/ja
Publication of WO2022259559A1 publication Critical patent/WO2022259559A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment

Definitions

  • the present invention relates to a determination device, a determination method, and a determination program.
  • a method of process mining that analyzes and visualizes the flow of work performed in business is known in order to find points for improvement in business.
  • the information used for analysis and visualization in such process mining methods is a log in which the events to be analyzed are recorded. For example, there are various types of events to be analyzed depending on the type of work and the granularity to be analyzed. be.
  • Logs used for process mining must meet the requirements of "only the information to be analyzed”, “divided into items", and “events can be identified”. be.
  • operation logs that record operations on a PC often do not meet the requirements for logs used for process mining. Therefore, when performing process mining, for example, it is necessary to process the operation log to meet this requirement by three pre-processes: "removal of unnecessary operation events", “judgment of the same operation event", and "dividing by project”. .
  • the "division by project” process is the process of dividing the log for each project.
  • the operation log since the operation log resides on the worker's PC and records the work, the entire period during which the work was recorded may end up in one log file without being divided for each matter. , the process of dividing the log for each matter.
  • the process of dividing the log for each matter In the past, when analyzing and visualizing operations on a personal computer in order to find points for improvement in work, it was necessary for a human to visually check the operation log and divide it into files for each item. The process of dividing is done manually.
  • the present invention has been made in view of the above, and it is an object of the present invention to provide a determination device, a determination method, and a determination program that can easily and efficiently divide logs on a case-by-case basis.
  • the determination device of the present invention includes: a reception unit that receives a specification of a log division position; a creation unit that creates a rule for determining the split position of a log based on the relationship between characterized by having
  • a determination method of the present invention is a determination method executed by a determination device, comprising: a receiving step of receiving a designation of a log dividing position; a creation step of creating a rule for determining the division position of the log based on the relationship between the characterized by comprising
  • the determination program of the present invention includes: a receiving step for receiving a specification of a log dividing position; A computer is caused to execute a creation step of creating a rule for determination, and a determination step of determining a division position of a log to be processed using the rule created by the creation step.
  • FIG. 1 is a block diagram illustrating the configuration of the determination device of this embodiment.
  • FIG. 2 is a diagram showing operation logs stored in an operation log storage unit.
  • FIG. 3 is a diagram for explaining an example of a process for receiving designation of division positions by a user.
  • FIG. 4 is a diagram showing an example of subrules.
  • FIG. 5 is a diagram illustrating an example of rule creation processing.
  • FIG. 6 is a diagram illustrating an example of automatic division processing of an operation log.
  • FIG. 7 is a diagram showing a display example of the result of automatic division.
  • FIG. 8 is a flowchart illustrating an example of a processing procedure for rule creation processing.
  • FIG. 9 is a flowchart illustrating an example of a processing procedure of operation log division processing.
  • FIG. 10 is a diagram explaining process mining.
  • FIG. 11 is a diagram illustrating preprocessing for process mining.
  • FIG. 12 is a diagram for explaining conventional problems.
  • FIG. 13 is a diagram showing
  • the determination device determines the division position of the operation log. history, etc.).
  • FIG. 1 is a block diagram illustrating the configuration of the determination device of this embodiment.
  • the determination device 10 of this embodiment is realized by a general-purpose computer such as a personal computer, and has a communication processing section 11 , an input section 12 , an output section 13 , a control section 14 and a storage section 15 .
  • the communication processing unit 11 is realized by a NIC (Network Interface Card) or the like, and controls communication between an external device and the control unit 14 via an electrical communication line such as a LAN (Local Area Network) or the Internet.
  • the communication processing unit 11 receives an operation log to be processed from an external device.
  • the input unit 12 is implemented using input devices such as a keyboard and a mouse, and inputs various instruction information such as processing start to the control unit 14 in response to input operations by the operator.
  • the output unit 13 is implemented by a display device such as a liquid crystal display.
  • the storage unit 15 stores data and programs necessary for various processes by the control unit 14, and has an operation log storage unit 15a and a rule storage unit 15b.
  • the storage unit 15 is a semiconductor memory device such as RAM (Random Access Memory) or flash memory, or a storage device such as a hard disk or optical disk.
  • the operation log storage unit 15a stores operation logs to be processed.
  • the operation log storage unit 15a stores, as an operation log, "occurrence time” of the operation, "specific information of the operated GUI (Graphical User Interface) component", and the like.
  • information of one operation event is expressed as a collection of multiple attribute values (columns, items).
  • FIG. 2 is a diagram showing logs stored in an operation log storage unit.
  • an operation log in which only operations on the browser are recorded is assumed for the sake of simplicity. Therefore, only browser-related values are shown in the log attribute values.
  • the operation log may also record inputs from some input device or command inputs on the CUI (Character-based User Interface). If you want to record those other kinds of operations, you need to increase the log entries as needed.
  • CUI Consumer-based User Interface
  • the operation log storage unit 15a stores "date and time”, “operation type”, “URL”, “title”, “tagName”, “type”, “id”, “value”, and “name”. , “ClassName”, “left”, “top”, “width”, and “height”. It should be noted that the operation log storage unit 15a is not limited to the above-described operation log as the operation log to be stored, and may also store, for example, an image captured at the time of operation.
  • the operation log storage unit 15a stores a "null" value indicating that the value is not set when the item is not set or cannot be acquired. Note that the attribute elements included in the operation log do not have to be the directly obtained information itself. You can have it. In addition, the operation log storage unit 15a stores operation logs in chronological order of events so that the order of events occurring during work can be known.
  • the rule storage unit 15b stores rules for determining division positions of operation logs, which are created by the creation unit 14b, which will be described later.
  • the rule storage unit 15b may also store sub-rules used by the creation unit 14b, which will be described later. It is assumed that the subrules are preset manually or automatically.
  • the control unit 14 has an internal memory for storing programs defining various processing procedures and required data, and executes various processing using these.
  • the control unit 14 has a reception unit 14a, a creation unit 14b, and a determination unit 14c.
  • the control unit 14 is an electronic circuit such as a CPU (Central Processing Unit) or MPU (Micro Processing Unit), or an integrated circuit such as an ASIC (Application Specific Integrated Circuit) or FPGA (Field Programmable Gate Array).
  • the reception unit 14a receives the specification of the division position of the operation log. For example, the reception unit 14a acquires the operation log from the operation log storage unit 15a, and allows the user to select one or more pairs of start and end points for clipping one case. Any method may be used for receiving the designation. For example, the receiving unit 14a does not designate the starting end and the terminal end, but allows selection as a range designation such as a drag-and-drop operation. good too. Alternatively, only the division position may be designated instead of the start and end points. However, in that case, estimation of the later-described length rule becomes impossible.
  • the reception unit 14a may visually display the operation events in chronological order and receive designation of division positions from the user.
  • FIG. 3 is a diagram for explaining an example of a process for receiving designation of division positions by a user.
  • one operation event is displayed as one node.
  • the reception unit 14a displays a capture image recorded at the same time as the operation event is recorded on the node, and displays the operation position with a red frame on the image.
  • the user can specify the division position while recognizing the specific operation of each operation event without understanding the contents recorded in the operation log.
  • a set of operation events divided by receiving designation of division positions from the user will be referred to as “exemplified case” as appropriate below.
  • the creation unit 14b creates a rule for determining the division position of the operation log based on the relationship between the attribute values of the operation events before and after the division position received by the reception unit 14a. In addition, the creating unit 14b determines the relationship between the attribute values of the operation events before and after the division position received by the reception unit 14a, and the operation log divided by the division position received by the reception unit 14a. A rule for determining the division position of the operation log may be created based on the length.
  • the creating unit 14b sets (1) the length rule, (2) the common attribute element rule for n elements after the start and m elements before the end, (3) N′ elements after the start, and A case of creating three rules of attribute element rules common to M′ pieces will be described before.
  • the creation unit 14b is not limited to creating all three rules, and may create only rules (2) or (3), for example. Also, the creation unit 14b may create rules other than the above three rules.
  • the creation unit 14b calculates the average ⁇ and the standard deviation ⁇ for the lengths of a plurality of exemplified cases as (1) length rules, and creates the average ⁇ and the standard deviation ⁇ as rules. If only one project is exemplified or if the standard deviation ⁇ is small, this length rule can be rejected, or the standard deviation ⁇ can be decided as 1/3 of the average ⁇ . good.
  • a matching method for splitting the created rule (1) will be described.
  • this rule is considered to match.
  • a fixed score (for example, 10 points) is added when the rule is matched. The score may be constant, but may be decreased linearly or according to some function according to the amount of deviation from the average ⁇ .
  • the creation unit 14b creates an attribute element common to a predetermined number of events after the beginning of each operation log divided by the division position accepted by the reception unit 14a, and , and create common attribute elements as rules. If only the division position of the matter is exemplified instead of exemplifying the start and end of each matter, the exemplified division position is the end of the matter before the division position and the start of the matter after the division position. It is treated as if it also serves as
  • the creating unit 14b presumes attribute elements common to n events after the beginning, and creates common attribute elements as rules. In this case, the creating unit 14b uses the events after a certain number (N) of events from the start point as targets for rule calculation. Also, for example, the creation unit 14b estimates attribute elements common to m events before the end, and creates common attribute elements as a rule. In this case, the creating unit 14b uses a certain number (M) of events before the end as targets for rule calculation. Subrules for determining common attribute elements will be described later.
  • the determination unit 14c determines whether all adopted subrules match the operation event to be tested. Then, when all the adopted sub-rules match, the determination unit 14c adds a certain score (for example, 5 points) for one operation event. Alternatively, the determination unit 14c may add a certain score (for example, 1 point) to one attribute of one event of one matched subrule instead of the case where all adopted subrules match.
  • a certain score for example, 5 points
  • the determination unit 14c may add a certain score (for example, 1 point) to one attribute of one event of one matched subrule instead of the case where all adopted subrules match.
  • the creation unit 14b creates an attribute element common to events within a predetermined number of events after the beginning of each operation log divided by the division position accepted by the reception unit 14a, and a predetermined number of events from the end.
  • the attribute elements common to the events in the previous range are estimated, and the common attribute elements are created as rules.
  • the creation unit 14b presumes attribute elements common to events in the range from the start to N' events, and creates common attribute elements as a rule. Also, for example, the creation unit 14b estimates attribute elements common to events in the range from the end to M′ events before, and creates common attribute elements as a rule. Subrules for determining common attribute elements will be described later.
  • the determination unit 14c determines whether the adopted subrule matches the operation event to be tested. Then, the determination unit 14c determines a match for all events in the range up to N′ events on the starting side of the case to be tested. Further, the determination unit 14c determines a match for all events up to M′ events before the termination side of the case to be tested. Then, the determination unit 14c adds a certain score (for example, 1 point) for each attribute of one event when this rule is matched. Alternatively, the determination unit 14c may add a certain score (for example, 5 points) to an event that matches all adopted attribute values.
  • a certain score for example, 1 point
  • FIG. 4 is a diagram showing an example of subrules.
  • subrules are associated with attribute element types and rule types to be used.
  • the subrule according to the nature of each attribute value of the operation event, "A. Determine character string by exact match”, "B. Determine character string by partial match”, "C. Determine by numerical range” ', and 'D. Not used for judgment'.
  • the sub-rules are not limited to these, and for example, some of these four types of sub-rules may not be used, and other types of rules may be added.
  • Each of the four sub-rules will be explained below.
  • this sub-rule "A. Judge a character string by exact match”, if the corresponding attribute value of the operation event to be inspected exactly matches the character string found in the above-mentioned rule estimation, this sub-rule is considered a match. do. Also, if uppercase and lowercase letters do not have to be distinguished, comparison is performed with a value obtained by converting the corresponding attribute value to uppercase or lowercase, as with parameters.
  • common substrings are found in multiple operation event sets exemplified by the user. In the simplest mechanism, the longest common substring included in all events is found, and this is used as the parameter of this subrule. Also, if the common sub-character string is equal to or less than the threshold number of characters, this sub-rule is not adopted. This threshold can be set arbitrarily, but for example, since the leading "http://" and "https://" parts are always common in the case of URLs, 8 characters or less will be rejected so as to exceed this. You can do it like this. To make it more advanced, consider information about the truth of "prefix match”, “suffix match”, “partial match”, and “exact match”, consider multiple common parts, and consider string length You may do so.
  • this sub-rule "B. Determine character string by partial match" if the corresponding attribute value of the operation event to be inspected contains the common sub-character string found in the above-mentioned rule estimation, this sub-rule is considered to be a match. do.
  • this subrule may be rejected. For example, if the threshold is set to 30, and if the threshold is 30 or more, it is considered that the variation is large and there is almost no commonality, and it is rejected.
  • FIG. 5 is a diagram illustrating an example of rule creation processing.
  • the preparation unit 14b prepares the above-mentioned rules (1) to (3) as illustrated in FIG. 5 from the illustrated case data.
  • the creating unit 14b calculates the average ⁇ and the standard deviation ⁇ for the length of each case shown in the (1) length rule, and creates the average ⁇ and the standard deviation ⁇ as a rule.
  • the creating unit 14b selects a certain number (N) of events after the starting point as objects for rule calculation, and calculates an attribute element common to each of the events 1 to N after the starting point. Estimate and create common attribute elements as rules.
  • the creation unit 14b selects an attribute element common to each of the events 1 to M events before the end as the object of rule calculation for a certain number of events (M) before the end. Estimate and create common attribute elements as rules.
  • the creating unit 14b presumes attribute elements common to events in the range from the start to N' events, and creates common attribute elements as rules. Also, for example, the creation unit 14b estimates attribute elements common to events in the range from the end to M′ events before, and creates common attribute elements as a rule.
  • the length of the exemplified case is short, such as "M+N>(length of the shortest case exemplified)" or "M'+N'>(length of the shortest case exemplified)". If so, M, N, M', N' may be automatically reduced. Also, M, N, M', and N' may be adjusted according to the average length of the example case instead of being fixed values. Further, when all the rules are rejected, or when the number of adopted rules is less than a certain threshold (for example, when the number of adopted rules is 10 or less), it is determined that automatic creation is impossible.
  • a certain threshold for example, when the number of adopted rules is 10 or less
  • the determination unit 14c uses the rule created by the creation unit 14b to determine the division position of the operation log to be processed. Specifically, the determination unit 14c acquires the operation log to be processed from the operation log storage unit 15a, and acquires the rule for determining the division position of the operation log from the rule storage unit 15b.
  • the acquired operation log is the same as the operation log acquired by the reception unit 14a and for which the division position is designated. Note that the operation log for rule creation acquired by the reception unit 14a and the operation log to be divided that is acquired by the determination unit 14c are not limited to being the same, and may be different. may
  • the determination unit 14c performs a division process for each partial area divided by the illustrated case area.
  • the beginning of the partial area is automatically set to the beginning of the item.
  • the determination unit 14c calculates a score by performing a matching method using rules while shifting the division candidate positions after the leading event one by one. Then, when the score exceeds the threshold, the determination unit 14c confirms the division there. Subsequently, when the division is confirmed, the determination unit 14c continues the division processing with the portion after that as the remaining partial area. Then, the determination unit 14c performs calculation while shifting the division candidate position, and when it reaches the end of the last event, it automatically determines the end of the case.
  • the determination unit 14c may display the position of automatic division instead of immediately confirming the result of automatic division. Then, the determination unit 14c may confirm the division after obtaining confirmation from the user.
  • FIG. 7 is a diagram showing a display example of the result of automatic division.
  • the determining unit 14c may temporarily cancel the tentative automatic split positions and prompt the user to increase the number of examples.
  • the user can more efficiently provide examples.
  • FIG. 8 is a flowchart illustrating an example of a processing procedure for rule creation processing.
  • FIG. 9 is a flowchart illustrating an example of a processing procedure of operation log division processing.
  • step S101 when the reception unit 14a of the determination device 10 receives a rule creation request from the user (Yes at step S101), the screen of operation events is displayed in chronological order (step S102). Then, the reception unit 14a receives designation of the division position from the user (step S103).
  • the creation unit 14b creates a rule for determining the division position of the operation log based on the relationship between the attribute values of the operation events before and after the division position received by the reception unit 14a (step S104). Then, the creation unit 14b stores the created rule in the rule storage unit 15b (step S105).
  • the determination unit 14c upon receiving an operation log division request from the user (Yes at step S201), acquires the operation log to be processed from the operation log storage unit 15a (step S202).
  • the determination unit 14c uses the rule created by the creation unit 14b to determine the division position of the operation log to be processed (step S203), and divides the operation log based on the determined division position (step S204). ).
  • the determination device 10 receives designation of the division position of the operation log, and determines the division position of the operation log based on the relationship between the attribute values of the operation events before and after the received division position. Create a rule for Then, the determination device 10 uses the created rule to determine the division position of the operation log to be processed.
  • the determination device 10 can easily and efficiently divide the operation log for each case.
  • the determination device 10 can automatically determine the division position on a case-by-case basis according to the user's example, even without a deep understanding of the internal structure of the system and the attribute values of the operation log.
  • the determination device 10 can divide a large amount of operation logs into individual cases with a small amount of operation as preprocessing for process mining, and efficiently analyze and visualize operations on a personal computer in order to find points for improving operations.
  • FIG. 10 is a diagram explaining process mining.
  • FIG. 11 is a diagram illustrating preprocessing for process mining.
  • FIG. 12 is a diagram for explaining conventional problems.
  • attribute values recorded in operation logs require specialized knowledge to interpret.
  • knowledge of HTML and DOM Document Object Model
  • URLs and the like may not be exactly the same even for the same page. Further, for example, if a session ID is included, a part of the URL changes each time a user logs in, so it is necessary to guess a URL generation rule in order to determine the identity of the URL.
  • the determination device 10 creates a rule for determining the split position based on the relationship between the attribute values of the operation events before and after the split position exemplified by the user. is used to automatically determine the division position, so even without a deep understanding of the internal structure of the system and the attribute values of the operation log, the division position can be automatically determined for each project based on the user's example. can.
  • each constituent element of each illustrated apparatus according to the above embodiment is functionally conceptual, and does not necessarily need to be physically configured as illustrated.
  • the specific form of distribution and integration of each device is not limited to the one shown in the figure, and all or part of them can be functionally or physically distributed and integrated in arbitrary units according to various loads and usage conditions. Can be integrated and configured.
  • each processing function performed by each device may be implemented in whole or in part by a CPU and a program analyzed and executed by the CPU, or implemented as hardware based on wired logic.
  • ⁇ program ⁇ It is also possible to create a program in which the processing executed by the determination device 10 described in the above embodiment is described in a computer-executable language. In this case, the same effects as those of the above embodiments can be obtained by having the computer execute the 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 by a computer and executed to realize processing similar to that of the above embodiments.
  • FIG. 13 is a diagram showing a computer that executes a program.
  • computer 1000 includes, for example, memory 1010, CPU 1020, hard disk drive interface 1030, disk drive interface 1040, serial port interface 1050, video adapter 1060, and network interface 1070. , and these units are connected by a bus 1080 .
  • the memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM 1012, as illustrated in FIG.
  • the ROM 1011 stores a boot program such as BIOS (Basic Input Output System).
  • Hard disk drive interface 1030 is connected to hard disk drive 1090 as illustrated in FIG.
  • Disk drive interface 1040 is connected to disk drive 1100 as illustrated in FIG.
  • a removable storage medium such as a magnetic disk or optical disk is inserted into the disk drive 1100 .
  • the serial port interface 1050 is connected to, for example, a mouse 1110 and a keyboard 1120, as illustrated in FIG.
  • Video adapter 1060 is connected to display 1130, for example, as illustrated in FIG.
  • the hard disk drive 1090 stores an OS 1091, application programs 1092, program modules 1093, and program data 1094, for example. That is, the above program is stored in, for example, the hard disk drive 1090 as a program module in which instructions to be executed by the computer 1000 are written.
  • the various data described in the above embodiments are stored as program data in the memory 1010 or the hard disk drive 1090, for example. Then, the CPU 1020 reads the program modules 1093 and program data 1094 stored in the memory 1010 and the hard disk drive 1090 to the RAM 1012 as necessary, and executes various processing procedures.
  • program module 1093 and program data 1094 related to the program are not limited to being stored in the hard disk drive 1090. For example, they may be stored in a removable storage medium and read by the CPU 1020 via a disk drive or the like. . Alternatively, the program module 1093 and program data 1094 related to the program are stored in another computer connected via a network (LAN (Local Area Network), WAN (Wide Area Network), etc.), and via the network interface 1070 It may be read by CPU 1020 .
  • LAN Local Area Network
  • WAN Wide Area Network

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

判定装置(10)は、ログの分割位置の指定を受け付け、受け付けた分割位置の前後のログイベントの属性値の関係性に基づいて、ログの分割位置の判定するためのルールを作成する。そして、判定装置(10)は、作成したルールを用いて、処理対象のログの分割位置を判定する。

Description

判定装置、判定方法および判定プログラム
 本発明は、判定装置、判定方法および判定プログラムに関する。
 従来、業務の改善点などを見つけるため、業務で行われる作業の流れを分析して可視化するプロセスマイニングの手法が知られている。このようなプロセスマイニングの手法において分析や可視化に使われる情報は、分析対象のイベントが記録されたログである。例えば、分析対象となるイベントは、業務の種類や分析したい粒度にもよって様々なものがあるが、例えば「ボタンのクリック」や「テキストボックスへの入力」などのGUI操作を対象とすることがある。
 プロセスマイニングに使われるログは、例えば、「分析対象の情報のみに絞られている」「案件ごとに分割されている」「イベントが識別できる状態になっている」の要件を満たしている必要がある。例えば、PC上の操作を記録した操作ログでは、プロセスマイニングに使われるログの要件を満たしていない場合が多い。そのため、プロセスマイニングを行う際には、例えば、3つの事前処理「不要操作イベントの除去」「同一操作イベントの判定」「案件単位の分割」によってこの要件を満たすよう操作ログを加工する必要がある。
 ここで、「案件単位の分割」処理とは、案件ごとにログを分割する処理のことである。つまり、操作ログが、作業者のPC上に常駐して作業を記録するなどするため、案件ごとに分割されておらず作業を記録した期間全体が一つのログファイルになってしまう場合があるため、案件ごとにログを分割する処理のことである。従来では、業務の改善点を見つけるためのパソコン上の操作の分析・可視化においては、人間が目視で操作ログを確認し案件単位のファイルに分割するなどして、案件単位になるように操作ログを分割する処理を手作業で行っている。
横瀬、卜部、八木、他:DX推進に貢献する業務可視化技術、 2020年、NTT技術ジャーナル、2020 vol.32 No.2, p.72-75、[online]、[2021年4月23日検索]、インターネット<https://journal.ntt.co.jp/article/880>
 しかしながら、従来の技術では、ログの案件単位の分割を容易かつ効率的に行うことができなかったという課題があった。例えば、操作ログの案件単位の分割を手作業で行う場合、作業者にシステム内部の作りや操作ログの属性値の意味の理解を要し、更に大量のログ扱うには大きな稼働を要し、また、固定的なルール・アルゴリズムでは、システムは内部的な作りが違うため、案件単位になるように自動的に操作ログを分割することは難しいという課題があった。
 本発明は、上記に鑑みてなされたものであって、ログの案件単位の分割を容易かつ効率的に行うことができる判定装置、判定方法および判定プログラムを提供することを目的とする。
 上述した課題を解決し、目的を達成するために、本発明の判定装置は、ログの分割位置の指定を受け付ける受付部と、前記受付部によって受け付けられた分割位置の前後のログイベントの属性値の関係性に基づいて、ログの分割位置の判定するためのルールを作成する作成部と、前記作成部によって作成されたルールを用いて、処理対象のログの分割位置を判定する判定部とを有することを特徴とする。
 また、本発明の判定方法は、判定装置によって実行される判定方法であって、ログの分割位置の指定を受け付ける受付工程と、前記受付工程によって受け付けられた分割位置の前後のログイベントの属性値の関係性に基づいて、ログの分割位置の判定するためのルールを作成する作成工程と、前記作成工程によって作成されたルールを用いて、処理対象のログの分割位置を判定する判定工程とを含むことを特徴とする。
 また、本発明の判定プログラムは、ログの分割位置の指定を受け付ける受付ステップと、前記受付ステップによって受け付けられた分割位置の前後のログイベントの属性値の関係性に基づいて、ログの分割位置の判定するためのルールを作成する作成ステップと、前記作成ステップによって作成されたルールを用いて、処理対象のログの分割位置を判定する判定ステップとをコンピュータに実行させることを特徴とする。
 本発明によれば、ログの案件単位の分割を容易かつ効率的に行うことが可能となる。
図1は、本実施形態の判定装置の構成を例示するブロック図である。 図2は、操作ログ記憶部に記憶された操作ログを示す図である。 図3は、ユーザによる分割位置の指定を受け付ける処理の一例を説明する図である。 図4は、サブルールの一例を示す図である。 図5は、ルール作成処理の一例を説明する図である。 図6は、操作ログの自動分割処理の一例を説明する図である。 図7は、自動分割結果の表示例を示す図である。 図8は、ルール作成処理の処理手順の一例を示すフローチャートである。 図9は、操作ログ分割処理の処理手順の一例を示すフローチャートである。 図10は、プロセスマイニングについて説明する図である。 図11は、プロセスマイニングの事前処理について説明する図である。 図12は、従来の課題について説明する図である。 図13は、プログラムを実行するコンピュータを示す図である。
 以下に、本願に係る判定装置、判定方法および判定プログラムの実施の形態を図面に基づいて詳細に説明する。また、本発明は、以下に説明する実施の形態により限定されるものではない。なお、以下では、判定装置が、操作ログの分割位置を判定する処理を例に説明するが、操作ログに限定されるものではなく、他の同様の構造を持つログ(例えば、電話の受信発信履歴など)にも適用可能である。
[判定装置の構成]
 図1は、本実施形態の判定装置の構成を例示するブロック図である。図2に例示するように、本実施形態の判定装置10は、パソコン等の汎用コンピュータで実現され、通信処理部11、入力部12、出力部13、制御部14、および記憶部15を有する。
 通信処理部11は、NIC(Network Interface Card)等で実現され、LAN(Local Area Network)やインターネットなどの電気通信回線を介した外部の装置と制御部14との通信を制御する。例えば、通信処理部11は、処理対象の操作ログを外部の装置から受信する。
 入力部12は、キーボードやマウス等の入力デバイスを用いて実現され、操作者による入力操作に対応して、制御部14に対して処理開始などの各種指示情報を入力する。出力部13は、液晶ディスプレイなどの表示装置等によって実現される。
 記憶部15は、制御部14による各種処理に必要なデータおよびプログラムを格納し、操作ログ記憶部15aおよびルール記憶部15bを有する。例えば、記憶部15は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置などである。
 操作ログ記憶部15aは、処理対象の操作ログを記憶する。例えば、操作ログ記憶部15aは、操作ログとして、操作の「発生時刻」「操作されたGUI(Graphical User Interface)部品の固有情報」などを記憶する。また、操作ログは、1つの操作イベントの情報は複数の属性値(列、項目)の集まりとして表現される。
 ここで図2を用いて、操作ログ記憶部に記憶された操作ログについて説明する。図2は、操作ログ記憶部に記憶されたログを示す図である。図2の例では、例を簡潔にするためブラウザ上の操作のみを記録した操作ログを想定している。そのため、ログの属性値にはブラウザに関連するもののみを示している。
 なお、操作ログには、PC上のGUI操作に加えて、何らかの入力装置による入力を記録したり、CUI(Character-based User Interface)上のコマンド入力を記録したりしてもよい。それらの別種の操作を記録する場合は、必要に応じてログの項目を増やす必要がある。
 図2に例示するように、操作ログ記憶部15aは、「日時」、「操作種別」、「URL」、「タイトル」、「tagName」、「type」、「id」、「value」、「name」、「ClassName」、「left」、「top」、「width」、「height」を記憶する。なお、操作ログ記憶部15aは、記憶する操作ログとして上述したものに限定されるものではなく、例えば、操作時の画像キャプチャ等も記憶してもよい。
 図2の例では、操作ログ記憶部15aは、その項目が設定されていない場合や取得できない場合は、その値が設定されていないことを示す「null」値が記憶される。なお、操作ログに含まれる属性要素は直接取得した情報そのものである必要はなく、加工されていたり、複数の情報を組み合わせていたり、最終的に操作ログに含まれない情報を利用して加工されていたりしてもよい。また、操作ログ記憶部15aは、作業の中で発生したイベントの順番が分かるように、イベントの時系列順に操作ログを記憶する。
 ルール記憶部15bは、後述する作成部14bによって作成された、操作ログの分割位置の判定するためのルールを記憶する。また、ルール記憶部15bは、後述する作成部14bによって用いられるサブルールを記憶してもよい。なお、サブルールは、手動または自動により予め設定されているものとする。
 制御部14は、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有し、これらによって種々の処理を実行する。例えば、制御部14は、受付部14a、作成部14bおよび判定部14cを有する。ここで、制御部14は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などの電子回路やASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの集積回路である。
 受付部14aは、操作ログの分割位置の指定を受け付ける。例えば、受付部14aは、操作ログ記憶部15aから操作ログを取得し、ユーザに、一つの案件を切り抜く始端と終端を例示として一組以上選択させる。指定を受け付ける方法はどのような方法であってもよく、例えば、受付部14aは、始端と終端を指定させるのではなく、ドラッグ&ドロップ操作のような範囲指定として選択させるようにするようにしてもよい。もしくは、始端と終端ではなく、分割位置のみを指定させてもよい。ただし、その場合は後述の長さルールの推定はできなくなる。
 例えば、図3に例示するように、受付部14aは、操作イベントを時系列でビジュアルに表示し、ユーザから分割位置の指定を受け付けるようにしてもよい。図3は、ユーザによる分割位置の指定を受け付ける処理の一例を説明する図である。図3の例では、一つの操作イベントが一つのノードとして表示されている。受付部14aは、そのノードには操作イベントの記録と同時に記録したキャプチャ画像を表示し、その画像上に操作位置を赤枠で表示している。このように表示することで、ユーザは操作ログに記録された内容を理解しなくても、各操作イベントが具体的などの操作かを認識しつつ、分割位置を指定することができる。なお、ユーザから分割位置の指定を受け付けたことで、分割された操作イベントの集合を、以下では適宜「例示された案件」と記載する。
 作成部14bは、受付部14aによって受け付けられた分割位置の前後の操作イベントの属性値の関係性に基づいて、操作ログの分割位置の判定するためのルールを作成する。また、作成部14bは、受付部14aによって受け付けられた分割位置の前後の操作イベントの属性値の関係性とともに、受付部14aによって受け付けられた分割位置によって分割された操作ログの始端から終端までの長さに基づいて、操作ログの分割位置の判定するためのルールを作成するようにしてもよい。
 以下では、作成部14bは、(1)長さルール、(2)始端からn個後、終端からm個前に共通する属性要素ルール、(3)始端から後ろにN’個分、終端から前にM’個分に共通する属性要素ルールの3つのルールを作成する場合について説明する。なお、作成部14bは、3つのルール全てを作成する場合に限定されるものではなく、例えば、(2)または(3)のみのルールを作成してもよい。また、作成部14bは、上記3つのルール以外のルールを作成してもよい。
 例えば、作成部14bは、(1)長さルールとして、複数の例示された案件の長さについて、平均μと標準偏差σを算出し、平均μと標準偏差σをルールとして作成する。なお、案件が1つしか例示されなかった場合や標準偏差σが小さい場合は、この長さルールを不採用とするか、標準偏差σを平均μの3分の1などと決め打ちしてもよい。
 作成した(1)のルールの分割処理時のマッチング方法について説明する。分割処理時には、テスト対象の案件の長さが下記の式を満たす場合には本ルールがマッチしたとみなす。
 μ-kσ≦(テスト対象の長さ)≦μ+kσ
 kは定数であり、任意に決定する。値のばらつきが正規分布に従うと仮定する場合は、一般的にk=3(99.7%の範囲)とするとよい。本ルールにマッチした場合は、一定のスコア(例えば10点)を加算する。スコアは一定としてもよいが、平均μからずれ量に応じて線形または何らかの関数にしたがって減らしてもよい。
 作成部14bは、上記(2)ルールについて、受付部14aによって受け付けられた分割位置によって分割された各操作ログの始端から所定個後のイベントに共通する属性要素と、終端から所定個前のイベントに共通する属性要素を推定し、共通する属性要素をルールとして作成する。案件ごとに始端と終端を例示させるのではなく、案件の分割位置のみを例示させた場合は、例示された分割位置がその分割位置の前の案件の終端とその分割位置の後の案件の始端を兼ねているとみなして処理を行う。
 例えば、作成部14bは、上記(2)ルールについて、始端からn個後のイベントに共通する属性要素を推定し、共通する属性要素をルールとして作成する。この場合、作成部14bは、始端から一定の個数(N個)後までのイベントをルール算出の対象とする。また、例えば、作成部14bは、終端からm個前のイベントに共通する属性要素を推定し、共通する属性要素をルールとして作成する。この場合、作成部14bは、終端から一定の個数(M個)前までのイベントをルール算出の対象とする。なお、共通する属性要素を判定するためのサブルールについては後述する。
 作成した(2)のルールの分割処理時のマッチング方法について説明する。分割処理時には、後述する判定部14cは、テスト対象の操作イベントについて、採用したサブルールが全てマッチするかを判定する。そして、判定部14cは、採用したサブルールが全てマッチした場合は、一つの操作イベントにつき一定のスコア(例えば5点)を加算する。もしくは、判定部14cは、採用した全てのサブルールがマッチする場合ではなく、マッチしたサブルール一つのイベントの一つの属性につき一定のスコア(例えば1点)を加算してもよい。
 作成部14bは、上記(3)ルールについて、受付部14aによって受け付けられた分割位置によって分割された各操作ログの始端から所定個後までの範囲のイベントに共通する属性要素と、終端から所定個前までの範囲のイベントに共通する属性要素とを推定し、共通する属性要素をルールとして作成する。
 例えば、作成部14bは、上記(3)ルールについて、始端からN’個後までの範囲のイベントに共通する属性要素を推定し、共通する属性要素をルールとして作成する。また、例えば、作成部14bは、終端からM’個前までの範囲のイベントに共通する属性要素を推定し、共通する属性要素をルールとして作成する。なお、共通する属性要素を判定するためのサブルールについては後述する。
 作成した(3)のルールの分割処理時のマッチング方法について説明する。分割処理時には、後述する判定部14cは、テスト対象の操作イベントについて、採用したサブルールがマッチするかを判定する。そして、判定部14cは、テスト対象の案件の始端側について、N’個後までの範囲のイベント全てについてマッチを判定する。また、判定部14cは、テスト対象の案件の終端側について、M’個前までの範囲のイベント全てについてマッチを判定する。そして、判定部14cは、本ルールにマッチした場合は、一つのイベントの一つの属性につき一定のスコア(例えば1点)を加算する。もしくは、判定部14cは、採用した属性値全てにマッチするイベントにつき一定のスコア(例えば5点)を加算してもよい。
 ここで、図4を用いて、共通する属性要素を判定するためのサブルールについて説明する。図4は、サブルールの一例を示す図である。図4に例示するように、サブルールは、属性要素の種別と利用するルール種別とが対応付けされている。サブルールでは、操作イベントの各属性値の性質に合わせて、「A.完全一致で文字列を判定する」、「B.部分一致で文字列を判定する」、「C.数値の範囲で判定する」、「D.判定に利用しない」のうち、いずれのサブルールを適用するかが規定されている。なお、サブルールはこれに限定されるものではなく、例えば、これら4種のサブルールの一部を使わなくてもよいし、他の種類のルールを追加してもよい。以下4種のサブルールについてそれぞれ説明する。
 まず、サブルールの「A.完全一致で文字列を判定する」について説明する。このサブルールの設定方法について、例えば、ユーザによって例示された複数の操作イベントにおいて、全ての属性値が完全一致しない場合は、該当の属性要素について本サブルールを不採用とする。また、ユーザによって例示された複数の操作イベントにおいて、全ての属性値で完全一致している文字列を本サブルールのパラメータとする。また、大文字、小文字を区別しなくてよい場合は、パラメータを大文字または小文字に変換し統一しておく。また、ユーザに例示された同一操作集合において、全ての属性値がnullである場合も、該当の属性要素について本サブルールを採用する。
 このサブルールの「A.完全一致で文字列を判定する」では、検査対象の操作イベントの該当の属性値が、前述のルール推定で見つけた文字列と完全一致する場合は、本サブルールがマッチとする。また、大文字、小文字を区別しなくてよい場合は、パラメータと同様に該当の属性値を大文字または小文字に変換した値で比較を行う。
 次に、サブルールの「B.部分一致で文字列を判定する」について説明する。このサブルールの設定方法について、例えば、ユーザによって例示された複数の操作イベント集合において、該当の属性値にnullが含まれている場合は、該当の属性要素について本サブルールを不採用とする。
 また、ユーザによって例示された複数の操作イベント集合において、共通する部分文字列を見つける。最も単純な仕組みでは、全てのイベントに共通して含まれる最長の共通部分文字列を見つけ、これを本サブルールのパラメータとする。また、共通部分文字列が閾値文字数以下の場合は、本サブルールを不採用とする。この閾値は任意に設定できるが、例えばURLであれば先頭の「http://」や「https://」の部分が必ず共通するため、これを超えるように8文字以下では不採用とするようにすればよい。より高度にするには、「前方一致」「後方一致」「部分一致」「完全一致」の真偽についての情報も考慮したり、共通部分を複数考慮するようにしたり、文字列長を考慮するようにしてもよい。
 このサブルールの「B.部分一致で文字列を判定する」では、検査対象の操作イベントの該当の属性値が、前述のルール推定で見つけた共通部分文字列を含む場合は、本サブルールがマッチとする。
 次に、サブルールの「C.数値の範囲で判定する」について説明する。このサブルールの設定方法について、例えば、ユーザに例示された複数の操作イベント集合において、「該当の属性値にnullが含まれている場合」、「該当の属性値に数値として取り扱えない値が含まれている場合」、「該当の属性値にその他の異常な値が含まれている場合(例:横幅(width)がマイナスの値)」は、該当の属性要素について本サブルールを不採用とする。また、例えば、ユーザに例示された複数の操作イベント集合において、平均μと標準偏差σを算出し、これを本サブルールのパラメータとする。また、標準偏差σが一定の閾値以上の場合や、十分な数が例示されない場合(一つだけしか例示されない場合)は、本サブルールを不採用としてよい。例えば、閾値を30として、30以上の場合はばらつきが大きく共通性がほとんどないとみなして不採用とする。
 このサブルールの「C.数値の範囲で判定する」では、検査対象の操作イベントの該当の属性値が、下記式の範囲にある場合は、本サブルールがマッチ(一致した)とする。
  μ-kσ≦属性値≦μ+kσ
 kは定数であり、任意に決定する。値のばらつきが正規分布に従うと仮定する場合は、一般的にk=3(99.7%の範囲)とするとよい。
 続いて、図5を用いて、作成部14bによるルール作成処理について説明する。図5は、ルール作成処理の一例を説明する図である。作成部14bは、例示された案件のデータから図5に例示するように、上述した(1)~(3)のルールを作成する。
 つまり、作成部14bは、例えば、(1)長さルールについて、例示された各案件の長さについて、平均μと標準偏差σを算出し、平均μと標準偏差σをルールとして作成する。
 また、作成部14bは、上記(2)ルールについて、始端から一定の個数(N個)後までのイベントをルール算出の対象として、始端から1~N個後のイベントそれぞれに共通する属性要素を推定し、共通する属性要素をルールとして作成する。また、作成部14bは、上記(2)ルールについて、終端から一定の個数(M個)前までのイベントをルール算出の対象として、終端から1~M個前のイベントそれぞれに共通する属性要素を推定し、共通する属性要素をルールとして作成する。
 また、作成部14bは、上記(3)ルールについて、始端からN’個後までの範囲のイベントに共通する属性要素を推定し、共通する属性要素をルールとして作成する。また、例えば、作成部14bは、終端からM’個前までの範囲のイベントに共通する属性要素を推定し、共通する属性要素をルールとして作成する。
 なお、例示された案件の長さが短く、「M+N>(例示された最短の案件の長さ)」や「M’+N’>(例示された最短の案件の長さ)」となっている場合は、M,N,M’,N’を自動的に減らしてもよい。また、M,N,M’,N’は、固定値とするのではなく、例示された案件の長さの平均に合わせて調整してもよい。また、全てのルールが不採用となった場合、または採用となったルールが一定の閾値以下がった場合(例えば採用されたルールが10個以下の場合)は、自動作成不可能と判定する。
 図2の説明に戻って、判定部14cは、作成部14bによって作成されたルールを用いて、処理対象の操作ログの分割位置を判定する。具体的には、判定部14cは、処理対象の操作ログを操作ログ記憶部15aから取得し、操作ログの分割位置の判定するためのルールをルール記憶部15bから取得する。ここで、取得される操作ログは、受付部14aで取得されて分割位置が指定された操作ログと同一のものである。なお、受付部14aで取得されたルール作成のための操作ログと判定部14cで取得される分割の処理対象となる操作ログは、同一である場合に限定されるものではなく、異なるものであってもよい。
 そして、判定部14cは、図6に例示するように、例示された案件領域で分割された部分領域ごとに分割処理を行う。部分領域の先頭は自動的に案件の始端とする。判定部14cは、先頭イベントの後ろの分割候補位置を一つずつずらしながら、ルールを用いたマッチング方法を実行し、スコアを計算する。そして、判定部14cは、スコアが閾値を超えた場合は、そこでの分割を確定する。続いて、判定部14cは、分割が確定した場合は、そこから後ろの部分を残りの部分領域とし、引き続き分割処理を行う。そして、判定部14cは、分割候補位置をずらしながら計算し、最後のイベントの後ろに達した場合は、自動的に案件の終端とする。
 例示された案件の数が少なかったり、例示された案件の多様性が不十分であったりする場合など、正しく分割ができない場合がある。このため、判定部14cは、図7に例示するように、自動分割の結果を即座に確定するのではなく、自動分割位置を表示するようにしてもよい。そして、判定部14cは、ユーザに確認を取ってから分割を確定させてもよい。図7は、自動分割結果の表示例を示す図である。
 例えば、判定部14cは、仮で分割された位置をユーザが不適切と判断した場合は、いったん仮の自動分割位置を取り消し、例示を増やすようにユーザに促すとよい。このような対話的なやり取りによって、徐々に例示数を増やすようにすることで、より効率的にユーザに例示させることができる。さらに、本実施形態の中で設定されている各種閾値や、推定により採用されたルールのON/OFFを許すようなUIを提供することで、より高度なユーザの要求にこたえることも可能である。
[判定装置の処理手順]
 次に、図8および図9を用いて、判定装置10が実行する処理の処理手順の一例について説明する。図8は、ルール作成処理の処理手順の一例を示すフローチャートである。図9は、操作ログ分割処理の処理手順の一例を示すフローチャートである。
 まず、図8を用いて、ルール作成処理の処理手順について説明する。図8に例示するように、判定装置10の受付部14aが、ユーザからのルール作成要求を受け付けると(ステップS101肯定)、操作イベントの画面を時系列で表示する(ステップS102)。そして、受付部14aは、ユーザから分割位置の指定を受け付ける(ステップS103)。
 そして、作成部14bは、受付部14aによって受け付けられた分割位置の前後の操作イベントの属性値の関係性に基づいて、操作ログの分割位置の判定するためのルールを作成する(ステップS104)。そして、作成部14bは、作成したルールをルール記憶部15bに格納する(ステップS105)。
 次に、図9を用いて、操作ログ分割処理の処理手順について説明する。図9に例示するように、判定部14cは、ユーザからの操作ログの分割要求を受け付けると(ステップS201肯定)、処理対象の操作ログを操作ログ記憶部15aから取得する(ステップS202)。
 そして、判定部14cは、作成部14bによって作成されたルールを用いて、処理対象の操作ログの分割位置を判定し(ステップS203)、判定した分割位置に基づいて操作ログを分割する(ステップS204)。
[実施の形態の効果]
 このように、実施形態に係る判定装置10は、操作ログの分割位置の指定を受け付け、受け付けた分割位置の前後の操作イベントの属性値の関係性に基づいて、操作ログの分割位置の判定するためのルールを作成する。そして、判定装置10は、作成したルールを用いて、処理対象の操作ログの分割位置を判定する。
 このため、判定装置10は、操作ログの案件単位の分割を容易かつ効率的に行うことが可能である。判定装置10は、システム内部の作りや操作ログの属性値の深い理解がなくても、ユーザの例示により、案件単位になるように分割位置の判定を自動的にできるようになる。つまり、判定装置10では、プロセスマイニングの事前処理として、少ない稼働で大量の操作ログを案件単位へ分割を可能とし、業務の改善点を見つけるための、パソコン上の操作の効率的な分析、可視化を可能とする。
 ここで、プロセスマイニングについて説明する。プロセスマイニングでは、図10に例示するように、イベントの順番や関係性を可視化することで、業務で行われる作業の流れを分析することができる。図10は、プロセスマイニングについて説明する図である。
 このようなプロセスマイニングでは、図11に示すように、プロセスマイニングを行う際には、例えば、事前処理として、「不要操作イベントの除去」「同一操作イベントの判定」「案件単位の分割」を必要がある。図11は、プロセスマイニングの事前処理について説明する図である。
 従来では、このような事前処理を手動で行う。例えば、このような事前処理を手動で行う際に、図12に示すように、現場のユーザは画面キャプチャから直感的に例示可能だが、操作ログを処理するのは容易ではない場合がある。図12は、従来の課題について説明する図である。例えば、操作ログで記録されている属性値は、解釈に専門的な知識が必要である。例えば、ブラウザ上の操作を記録した操作ログの意味を解釈するには、HTMLやDOM(Document Object Model)の知識が必要となる。また、URLなどは、同一のページであっても完全に同一にならない場合がある。また、例えば、セッションIDを含む場合には、ログインするたびにURLの一部が変化してしまうため、URLの同一性を判断するにはURLの生成ルールを推測する必要がある。
 このように、画面内の見た目と内部的な作り(IDの付与方法など)に関連性はないため、一般的なユーザでも判断できるような見た目が類似性からでは内部の作りを推測することはできない。画面内の内部的な作りは様々であるため、一定のアルゴリズムでは常に最良の判断を行うことはできない。専門的な知識を持つユーザが操作ログの傾向からルールを推定して、アルゴリズムを組むことで様々な画面の作りに対応可能であるが、一般的なユーザには困難である。
 このため、操作ログの案件単位の分割を手作業で行う場合、作業者にシステム内部の作りや操作ログの属性値の意味の理解を要し、更に大量のログ扱うには大きな稼働を要し、また、固定的なルール・アルゴリズムでは、システムは内部的な作りが違うため、案件単位になるように自動的に操作ログを分割することは難しいという課題があった。
 これに対して、実施形態に係る判定装置10では、ユーザに例示された分割位置の前後の操作イベントの属性値の関係性から、分割位置を判定するためのルールを作成し、作成されたルールを用いて分割位置を自動的に判定するので、システム内部の作りや操作ログの属性値の深い理解がなくても、ユーザの例示により、案件単位になるように分割位置の判定を自動的にできる。
〔システム構成等〕
 上記実施形態に係る図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のごとく構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
 また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
〔プログラム〕
 また、上記実施形態において説明した判定装置10が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。この場合、コンピュータがプログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかるプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータに読み込ませて実行することにより上記実施形態と同様の処理を実現してもよい。
 図13は、プログラムを実行するコンピュータを示す図である。図13に例示するように、コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有し、これらの各部はバス1080によって接続される。
 メモリ1010は、図13に例示するように、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、図13に例示するように、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、図13に例示するように、ディスクドライブ1100に接続される。例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、図13に例示するように、例えば、マウス1110、キーボード1120に接続される。ビデオアダプタ1060は、図13に例示するように、例えばディスプレイ1130に接続される。
 ここで、図13に例示するように、ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、上記のプログラムは、コンピュータ1000によって実行される指令が記述されたプログラムモジュールとして、例えば、ハードディスクドライブ1090に記憶される。
 また、上記実施形態で説明した各種データは、プログラムデータとして、例えば、メモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出し、各種処理手順を実行する。
 なお、プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ等を介してCPU1020によって読み出されてもよい。あるいは、プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
 以上、本発明者によってなされた発明を適用した実施形態について説明したが、本実施形態による本発明の開示の一部をなす記述および図面により本発明は限定されることはない。すなわち、本実施形態に基づいて当業者等によりなされる他の実施形態、実施例および運用技術等は全て本発明の範疇に含まれる。
 10 判定装置
 11 通信処理部
 12 入力部
 13 出力部
 14 制御部
 14a 受付部
 14b 作成部
 14c 判定部
 15 制御部
 15a 操作ログ記憶部
 15b ルール記憶部

Claims (6)

  1.  ログの分割位置の指定を受け付ける受付部と、
     前記受付部によって受け付けられた分割位置の前後のログイベントの属性値の関係性に基づいて、ログの分割位置の判定するためのルールを作成する作成部と、
     前記作成部によって作成されたルールを用いて、処理対象のログの分割位置を判定する判定部と
     を有することを特徴とする判定装置。
  2.  前記作成部は、前記受付部によって受け付けられた分割位置の前後のログイベントの属性値の関係性とともに、前記受付部によって受け付けられた分割位置によって分割されたログの始端から終端までの長さに基づいて、ログの分割位置の判定するためのルールを作成することを特徴とする請求項1に記載の判定装置。
  3.  前記作成部は、前記受付部によって受け付けられた分割位置によって分割された各ログの始端から所定個後のイベントに共通する属性要素と、終端から所定個前のイベントに共通する属性要素を推定し、共通する属性要素をルールとして作成することを特徴とする請求項1に記載の判定装置。
  4.  前記作成部は、前記受付部によって受け付けられた分割位置によって分割された各ログの始端から所定個後までの範囲のイベントに共通する属性要素と、終端から所定個前までの範囲のイベントに共通する属性要素とを推定し、共通する属性要素をルールとして作成することを特徴とする請求項1に記載の判定装置。
  5.  判定装置によって実行される判定方法であって、
     ログの分割位置の指定を受け付ける受付工程と、
     前記受付工程によって受け付けられた分割位置の前後のログイベントの属性値の関係性に基づいて、ログの分割位置の判定するためのルールを作成する作成工程と、
     前記作成工程によって作成されたルールを用いて、処理対象のログの分割位置を判定する判定工程と
     を含むことを特徴とする判定方法。
  6.  ログの分割位置の指定を受け付ける受付ステップと、
     前記受付ステップによって受け付けられた分割位置の前後のログイベントの属性値の関係性に基づいて、ログの分割位置の判定するためのルールを作成する作成ステップと、
     前記作成ステップによって作成されたルールを用いて、処理対象のログの分割位置を判定する判定ステップと
     をコンピュータに実行させることを特徴とする判定プログラム。
PCT/JP2021/022418 2021-06-11 2021-06-11 判定装置、判定方法および判定プログラム WO2022259559A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2023526837A JPWO2022259559A1 (ja) 2021-06-11 2021-06-11
PCT/JP2021/022418 WO2022259559A1 (ja) 2021-06-11 2021-06-11 判定装置、判定方法および判定プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/022418 WO2022259559A1 (ja) 2021-06-11 2021-06-11 判定装置、判定方法および判定プログラム

Publications (1)

Publication Number Publication Date
WO2022259559A1 true WO2022259559A1 (ja) 2022-12-15

Family

ID=84424547

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/022418 WO2022259559A1 (ja) 2021-06-11 2021-06-11 判定装置、判定方法および判定プログラム

Country Status (2)

Country Link
JP (1) JPWO2022259559A1 (ja)
WO (1) WO2022259559A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003331089A (ja) * 2002-05-10 2003-11-21 Fuji Xerox Co Ltd サービスサイト利用状況の分析装置
JP2013214148A (ja) * 2012-03-30 2013-10-17 Toshiba Corp メッセージ変換装置、及びメッセージ変換プログラム
JP2015057706A (ja) * 2013-09-16 2015-03-26 アクシス アーベー イベントタイムライン生成

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003331089A (ja) * 2002-05-10 2003-11-21 Fuji Xerox Co Ltd サービスサイト利用状況の分析装置
JP2013214148A (ja) * 2012-03-30 2013-10-17 Toshiba Corp メッセージ変換装置、及びメッセージ変換プログラム
JP2015057706A (ja) * 2013-09-16 2015-03-26 アクシス アーベー イベントタイムライン生成

Also Published As

Publication number Publication date
JPWO2022259559A1 (ja) 2022-12-15

Similar Documents

Publication Publication Date Title
US11670021B1 (en) Enhanced graphical user interface for representing events
US9720912B2 (en) Document management system, document management method, and document management program
US11757708B2 (en) Anomaly detection device, anomaly detection method, and anomaly detection program
CN112835579A (zh) 确定界面代码的方法、装置、电子设备和存储介质
CN114218302A (zh) 信息处理方法、装置、设备以及存储介质
WO2022259559A1 (ja) 判定装置、判定方法および判定プログラム
JP2018018373A (ja) 抽出装置および抽出方法
US20230133985A1 (en) Display control device and display control method
US7493324B1 (en) Method and computer program product for using data mining tools to automatically compare an investigated unit and a benchmark unit
JP6434435B2 (ja) 情報処理装置、操作支援方法および操作支援プログラム
WO2022259557A1 (ja) 判定装置、判定方法および判定プログラム
WO2022259558A1 (ja) 判定装置、判定方法および判定プログラム
CN113495841B (zh) 一种兼容性检测方法、装置、设备、存储介质及程序产品
CN114462625A (zh) 决策树的生成方法、装置、电子设备及程序产品
CN109284354B (zh) 脚本搜索方法、装置、计算机设备及存储介质
JP6280089B2 (ja) ホワイトリスト作成装置、ホワイトリスト作成方法およびホワイトリスト作成プログラム
JP7215318B2 (ja) 情報処理プログラム、情報処理方法、及び情報処理装置
CN113742501A (zh) 一种信息提取方法、装置、设备、及介质
CN113010782A (zh) 需求量获取方法、装置、电子设备以及计算机可读介质
WO2023105696A1 (ja) 情報付与装置、情報付与方法及び情報付与プログラム
WO2023144945A1 (ja) 操作ログ処理装置、操作ログ処理方法、および、操作ログ処理プログラム
JP6588494B2 (ja) 抽出装置、分析システム、抽出方法及び抽出プログラム
US11868853B2 (en) Analysis device, analysis method, and analysis program
US20240126573A1 (en) Display control device, display control method, and display control program
CN117574362B (zh) 一种达人账号数据异常分辨方法及系统

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21945228

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023526837

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE