プロセスマイニングの進化

evolution of process mining

Process Mining Evolution – from Process Mining 1.0 to 2.0

当記事では、プロセスマイニングが今後どのように進化していくのかについて簡単にご説明します。プロセスマイニングベンダーは現在、この進化の方向に向かってツールの機能拡張に取り組んでいます。

プロセスマイニングとは、業務システムから抽出したイベントログデータに基づいて、現行業務プロセス(as isプロセス)を可視化し、非効率な手順やボトルネックなどを発見する「分析アプローチ」です。その目的は、業務プロセスの継続的改善にあります。多くの場合、大量のデータを扱うことから、ビッグデータ分析のひとつと言えます。またデータマイニングとも近い関係にあります。

さて、日々遂行される業務プロセスの継続的改善を目的としていることから、プロセスマイニングの分析アプローチは「記述的分析」を起点に、「処方的分析」に向けて進化を始めています。なお、これは、一般的なデータマイニングにおける分析アプローチの進化と軌を一にしています。


記述的分析 – Descriptive Analytics

記述的分析とは、ありのままの現状を把握することです。

イベントログから現行プロセスを「プロセスフローチャート」の形で見える化する機能、すなわち「プロセス発見(Process Discovery)」で得られるものであり、プロセスマイニング分析の最も基本的な機能です。(したがって、この機能がないものはプロセスマイニングツールとは呼べません)

診断的分析 – Diagnostic Analysis

診断的分析とは、記述的分析で得られた現行プロセスモデルにおける問題点(非効率やボトルネックなど)の要因分析を行うものです。

「なぜ、この箇所は想定より時間が掛かっていて非効率となっているのか」、「なぜ、ここで処理待ちが多く発生しているのか、すなわちボトルネックなのか」というなぜを追求します。「根本原因分析(Root Cause Analysis)」と呼ばれる深堀り分析です。

予測分析 – Predictive Analytics

予測分析では、現在仕掛中の未完了案件(Running Case)をリアルタイムに分析し、今後どうなりそうかを予測します。

記述的分析、診断的分析では、完了済、すなわち過去のイベントログデータを分析しますが、さらに、予測モデルを開発することで、未完了案件の未来の振る舞いを確率的に予測します。すなわち、次に起こりえる活動(Activity)はなんになる可能性が高いか、また、終了までの所要時間はあと何時間になりそうか、といったことを予測し、担当者に伝えます。

ある案件の今後の流れが好ましくない方向に行きそうである、またKPIの目標値よりも所要時間が長くなりすぎて約束納期を過ぎてしまう、といったことを事前に知ることができれば、適切な予防策を講じることが可能となります。

処方分析 – Prescriptive Analytics

処方分析は、単に今後のプロセスの振る舞いを予測するだけでなく、プロセス改善のために、どのような打ち手が望ましいかをアドバイスするものです。

医師が患者を診療して、熱やセキなどの症状を記述し、インフルエンザと診断、今後高熱がさらに続くと予測して、解熱剤を処方するように、業務プロセスの将来の悪化を予測したときに、どのような改善策を講じるかを提案する。これが処方分析です。


以上、説明してきた進化の4段階のうち、記述的分析と診断的分析は、多くのプロセスマイニングツールの機能として既に実装されています。また、ユーザーもこの2つの分析を活用していることから、「プロセスマイニング1.0」と言えるでしょう。機能としては、プロセス自動発見機能と関連する分析機能によって、根本原因分析を行います。

そして、予測的分析機能や、処方的分析機能を持つものは、「プロセスマイニング2.0」と呼ぶ先進的なプロセスマイニングツールです。一部のリーディングベンダーがこれらの機能へと拡張を始めているところです。

evolution of process mining

プロセスマイニング2.0の機能としては、以下の3つが挙げられますが詳細は別記事にて。

・予測的プロセス監視 – Predictive Process Monitoring

・処方的プロセス監視 – Prescriptive Process Monitoring

・自動プロセス改善 – Automated Process Improvement

なお、プロセスマイニング進化について詳しく調べたい方は、BPM、プロセスマイニングの専門家、Marlon Duma氏(エストニアTartu大学教授)の著作やスライドシェア資料、セッション動画をご参照ください。

プロセスマイニング料理法

process mining how to cook

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.

プロセスマイニングとデータマイニング・AI、BPMとの関係

process mining and data mining and BPM

How process mining can relate to data mining, AI and BPM.

プロセスマイニングと密接な関係がある隣接分野があります。ひとつはデータマイニング・AI、もうひとつはBPM(Business Process Management)です。

今回は、どのように関係があるのかを簡単にご説明しましょう。

まずは「データマイニング・AI」とは何かから説明します。データマイニングは、基本的にビッグデータを対象とした分析手法であり、その主な目的はものごとの因果関係や典型的なパターンのような「法則性」を発見して、様々な意思決定に役立てることです。

例えば、各地の気温、湿度などの天候情報を大量に収集し、データマイニングでそのデータを分析することで、どのような状況において晴天になりやすいのか、それとも雨天になりやすいのかの予測式がつくられ、天気予報に活用されています。

データマイニングでは、数十年前から活用されてきた「多変量解析」の手法、例えば、回帰分析や、クラスター分析、決定木分析に加え、近年は主にニューラルネットワークによるディープラーニングが飛躍的な進歩を遂げ、ものごとを判別したり、予測する精度が大きく向上しています。一般に、これらの分析手法のことは「AI(Artificial Intelligence:人工知能)」と呼ばれますが、AIはデータマイニングにおいて頻繁に利用される手法なので、当記事では「データマイニング・AI」と一括りにしています。

さて、データマイニングはあらゆる分野のあらゆるビッグデータを分析対象としますが、基本的に「プロセス」を対象とはしてきませんでした。ある瞬間、すなわちスナップショット的な静的なデータを抽出して、要約したり、分類したり、因果関係を見出してきたりしたのです。

一方、プロセスマイニングは、文字通り、時系列のひとつながりになった動的なデータから、プロセスの流れを描き出すこと、すなわち「プロセスモデル」を作成することが基本にあります。もちろん、プロセス処理件数や処理時間など、プロセスに関わる静的な各種統計量も併せて算出する点は、データマイニングと共通しています。

こう考えると、データマイニングとプロセスマイニングは、分析手法としては兄弟分のようなものです。(どちらにも「マイニング」という言葉が含まれていますし)

ただ、プロセスマイニングを主体に考えると、プロセスに関わる様々な分析を深めていくうえで、データマイニング、AIの手法が応用されています。例えば、現在処理中の案件(ランニングケース)の終了までのリードタイムを推測するためには、データマイニングにおける「予測分析」が採用されています。

それ以外にも、必要に応じて、クラスター分析や決定木分析などが活用可能であり、今後も、プロセスマイニングツールとしての分析の幅や精度を高めるためにデータマイニングの手法がプロセスマイニングに取り入れられていくと考えられます。

では次に、BPM(BPM)について考えてみましょう。BPMはシンプルにいえば、プロセスを改善することを目的として、プロセスの現状を分析し、問題点を解消するto beプロセスを設計し、現場に展開・監視を行う一連の活動です。

このBPMの活動のうち、とりわけ「現状分析」において、プロセスマイニングの基本アプローチのひとつ、「プロセス発見」は役立ちますし、その後の設計、展開、監視においても、プロセスマイニングが提供できる「適合性検査」、「プロセス強化」のアプローチはBPMにとって強力な武器となりえます。

このように、プロセスマイニングとデータマイニング・AI、BPMはお互いに補完しあえる関係にあると言えます。プロセスマイニングのゴッドファーザー、Wil van der Aalst教授は、「プロセスマイニングは、データマイニングとBPMをつなぐ橋である」と述べられていますが、まさに、BPMの取り組みにおいて、プロセスに特化したデータマイニングとしての「プロセスマイニング」は大きな役割を果たしていくと思われます。