Process Mining: How to Cook
English follows Japanese. Before proofread.
プロセスマイニングは、「分析手法」です。プロセスマイニングツールを導入しただけではなにも始まりません。「分析プロジェクト」として一連の手順を企画し、実行管理を行う必要があります。
ただ、過去になんらかの調査や分析プロジェクトを行ったことがないと、分析プロジェクトの手順を理解するのは簡単ではないようです。そこで、プロセスマイニング分析の流れを料理の流れにみたてて解説してみたいと思います。
まず、料理の流れを確認します。場所の想定はレストランの厨房です。最初の活動は「食材仕入れ」、最後は、盛り付けてお客さまのテーブルに配膳する活動としています。
料理の流れ
1 食材仕入れ
食品卸業者などを通じて、各地から様々な食材を仕入れます。
2 食材
食材が揃いました。虫が食っていないか、腐ってないかなど確認します。
3 下準備
包丁で食材を切り刻んだり、鍋で沸かしたお湯でゆがいて苦みを取るなどの下ごしらえを行います。
4 調理
様々な調理器具を用いて食材を調理します。
5 盛り付け・配膳
出来上がった料理を見た目良く盛り付け、お客さまに提供します。
なお、このレストランでの料理全体をとりしきるのがマスターシェフの役割です。
次に、プロセスマイニング分析の手順を上記各調理手順と対応させてながら解説しましょう。
プロセスマイニング手順
1 データ抽出 = 食材仕入れ
SAPに代表されるERPや、SalesforceなどのCRMシステム、あるいは独自開発の業務システムなど、分析対象データとなるイベントログが記録・蓄積されている各種システムからデータを抽出します。
データの抽出方法としては、SQLによってDBから直接データを抜くことが一般的です。
データ抽出作業は基本的に、システムエンジニア、あるいはシステム管理者が行います。ERPのようにデータベース構造が複雑な場合、分析対象データがどこに所在しているかを見極める必要があるため、例えばSAPを熟視したSAPの専門家の支援を受けます。
2 分析対象データ = 食材
システムから抽出されたデータは、総称して「イベントログ」と呼ばれます。システム上での操作履歴をイベント単位でタイムスタンプと共に記録されたものだからです。
データフォーマットとしてはCSVで提供してもらえると、後工程のデータ前処理が楽になります。場合によっては、JSON形式のまま提供されることもあります。JSON形式のイベントログですと、前処理がちょっと面倒になります。
3 データ前処理 = 下準備
システムから抽出されたイベントログデータは、多くの場合、10本以上の複数のファイルから構成されています。操作履歴となるアクティビティとタイムスタンプ等が記録されているファイル、またマスターデータが含まれたファイルなどです。
次工程の分析を行うためには、基本的にはすべてのファイルを統合して1本のファイルに仕立てる必要があります。また、元ファイルには、文字化けしている箇所や、本来なんらかの値が入っているはずのセルが空白であるなど、そのままでは分析できないデータが多数含まれています。
そこで、ノイズ的なデータは除去する、補正するなど、料理のあく抜きと同様のデータクリーニングなどを行う必要があります。こうした、元データを分析可能なクリーンなデータに加工する工程がデータ前処理です。
データ前処理は、データをどのように処理すればクリーンになるかを熟知したデータサイエンティストが、ETLツールやPythonなどを駆使して行います。
4 分析 = 調理
データ前処理によって下ごしらえが済み、分析可能なクリーンデータができたら、ようやくプロセスマイニングツールに投入し、様々な分析が可能となります。
プロセスマイニングツールは非常に多機能なツールです。使いこなせるようになるには相応のトレーニングと経験が必要ですが、数字の羅列にしか見えないイベントログデータから、業務プロセスがフローチャートとして視覚化され、非効率であったりボトルネックであったりする箇所をあぶりだすのは楽しい作業です。
プロセスマイニングツールによる分析は、なにより使用するツールを熟知したツールの専門家が必要ですが、どのように分析を行うか、という分析視点を与えるのはプロセスアナリストです。また、データサイエンティストも、データの前処理を通じて、元データについての理解を深めていますので、分析作業の支援を行うことができます。
5 レポーティング = 盛り付け・配膳
プロセスマイニングツールでの様々な分析結果から判明した、対象プロセスの課題や問題点についてグラフ、表などを活用しながらレポートを作成します。レポートを提出する関係者は必ずしもデータ分析に慣れているわけではありませんので、なにが課題・問題なのかを容易に理解できるようなビジュアル表現に留意する必要があります。
レポート作成を担当するのは、プロセスアナリスト中心に、プロセス改善のノウハウ(リーン、シックスシグマなど)を持つつプロセスコンサルタントの支援も受けるのが理想です。必要に応じて追加分析を行うこともありますので、データサイエンティスト、ツールエキスパートのサポートもあるといいでしょう。
プロセスマイニング分析のプロジェクト全体を取り仕切る、レストランのマスターシェフに該当するのは、プロジェクトマネージャーです。プロジェクトマネージャーは、すべての工程を熟知している必要はありません。しかし、各工程の概要は理解していることと、なによりプロジェクトを円滑に遂行するスキルが求められます。
以上、料理の比喩を用いて、プロセスマイニング分析の標準的な手順をご説明しました。各工程とも、相応のスキルと経験が求められる難度の高い作業ではありますので、各分野のエキスパートがうまく連携してプロジェクトを進めていくことが求められます。
Process Mining: How to Cook
Process mining is an “analytical method”. The mere introduction of a process mining tool doesn’t start anything. You will need to plan a series of steps as an “analytical project” and manage their execution.
However, if you have not done any research or analysis projects in the past, it does not seem to be easy to understand the steps of an analysis project. Therefore, I would like to explain the flow of process mining analysis by contrasting the flow of cooking.
First, let’s see the flow of the food. The assumed location is the kitchen of a restaurant. The first activity is “purchasing foodstuff” and the last is serving dished-up food to customers’ tables.
COOKING FLOW
1 Purchase of foodstuffs
purchase a variety of food from all over the world through food wholesalers.
2 Foodstuff
The foods to be cooked are now available. Check to see if there are any insects eating or rotting.
3 Precooking
prepare the food by chopping it with a knife or boiling it in a pot of boiling water to remove the bitterness.
4 Cooking
Cooks food using a variety of cooking utensils.
5 dishing-up and serving
dish up cooked foods and serve the finished dishes to the customers.
Role of Master Chef
Note that the role of the master chef is to oversee the entire cooking process of the restaurant.
Next, let’s explain the steps of the process mining analysis, corresponding to the above cooking steps.
process mining procedure
1 Extraction of data = Purchase of foodstuff
extract data from various systems that record and accumulate event logs that are the target data for analysis, such as ERP represented by SAP, CRM systems such as Salesforce, or proprietary business systems.
As a method of data extraction, it is common to extract data directly from a DB by SQL.
Data extraction is basically done by system engineers or system administrators, and when the database structure is complex, such as ERP, it is necessary to determine where the data to be analyzed is located, for example, with the assistance of SAP experts who have good knowledge about SAP.
2 Data to be analyzed = Foodstuff
The data extracted from the system is collectively referred to as the “event log. This is because the history of operations on the system is recorded on an event-by-event basis with a time stamp.
As a data format, it would be easier to pre-process the data in the post-process if it were provided in CSV format. In some cases, the event log may be provided in JSON format and the pre-processing of the event log in JSON format can be a bit cumbersome.
3 Data preparation = Precooking
The event log data extracted from the system is often composed of multiple files, often ten or more. It can be a file that records activity and time stamps, etc., as well as a file that contains the master data.
Basically, all the files must be combined into a single file in order to analyze by a process mining tool. In addition, the original files contain a lot of data that cannot be analyzed as it is, such as garbled parts and empty cells that should have contained some kind of value.
Therefore, it is necessary to remove or adjust for those noisy data, that is, perform data cleaning similar to the removal of unfavorable parts of food. Data preparation is the process of processing the original data into clean data that can be analyzed by a process mining tool
Data preparetaion is done by data scientists who know how to process data to make it clean, using ETL tools, Python, and other tools, languages.
4 Analysis = Cooking
Once the data has been pre-processed and the clean data is ready for analysis, it can finally be fed into process mining tools for various analyses.
The process mining tool is a very versatile tool. It takes some training and experience to become proficient, but it’s fun to visualize business processes as a flowchart from event log data that looks like nothing more than a litany of numbers to uncover inefficiencies and bottlenecks.
Analysis with process mining tools requires tool experts who are familiar with the tools used, but it is the process analyst who gives the analytical perspective on how to do the analysis. The data scientist also has a better understanding of the original data through pre-processing of the data, so they can assist in the analytical work.
5 Reporting = Dishing up and serving
create reports using graphs, tables, etc. on the issues and problems of the target process identified from various analysis results with process mining tools. Since the people receiving the report are not necessarily familiar with data analysis, it is necessary to keep in mind the visual presentation that makes it easy to understand what the issue or problem is.
Ideally, the report should be written by a process analyst, with the assistance of a process consultant with process improvement know-how (Lean, Six Sigma, etc.). It’s also good to have the support of a data scientist or tool expert, as additional analysis may be required.
Role of Project Manager
It is the project manager who correspond to the master chef of the restaurant who runs the entire process mining analysis project. A project manager does not have to be familiar with the entire process. However, you must have a good understanding of each step of the process and above all, you must have the skills to execute the project smoothly.
So far I have used the culinary metaphor to explain the standard procedure for process mining analysis. Each process is a highly challenging one that requires a certain level of skill and experience, so it is necessary for experts in each field to work well together to advance the project.