プロセスマイニング向けのデータの取得元と構造化
データはどこから取得するか
すべてのプロセスは、それを実行するシステムに履歴を残します。ERPでは注文が作成され、サービスデスクではチケットが処理され、ワークフローツールでは承認が記録されます。プロセスマイニングは、この履歴を読み取ります。このページでは、データの取得場所とイベントログへの整形方法を説明します。すべてのログに必要な項目についてはプロセスマイニングに必要なデータを、対応しているファイル形式についてはサポートされているデータ形式をご覧ください。
システムから抽出する価値があるかどうかは、次の2つの質問で判断できます。
- ステップのタイムスタンプを記録しているか。現在の状態だけでなく、ステップの発生時刻を記録している必要があります。
- プロセス全体でケースIDとして使える識別子を記録しているか。
システムに最新の状態しか表示されない場合は、履歴または監査証跡を探してください。多くのエンタープライズシステムには、そのいずれかが保存されています。
イベントが記録される主な場所
| システムの種類 | 例 | イベントの保存場所 |
|---|---|---|
| ERP | SAP、Oracle E-Business SuiteまたはFusion、Microsoft Dynamics | 文書と変更のテーブル:購買発注、請求書、品目文書にはそれぞれ作成日または変更日と実行ユーザーが記録されます |
| サービスデスクとITSM | ServiceNow、Jira、Zendesk | すべての項目変更を記録する監査・履歴テーブル(例:ServiceNow sys_audit)と、各Task固有の作成日時・更新日時 |
| CRM | Salesforce、Microsoft Dynamics | タイムスタンプとユーザーとともに変更前後の値を保持するオブジェクト項目履歴テーブル |
| ワークフローとBPMツール | Camunda、Power Automate、カスタムワークフローエンジン | 各プロセスインスタンスの完了済みステップ履歴 |
| 社内開発アプリケーション | カスタムWebアプリ、レガシーシステム | アプリケーションログまたは監査テーブル。状態変更を記録するテーブルは、アプリの担当チームに確認してください |
| スプレッドシート | 手動の引き継ぎ、オフライン承認 | ケースID列とタイムスタンプ列が一貫して入力されていれば、エクスポートファイル自体 |
例:SAPの調達から支払いまで
調達から支払いまでのプロセスは、ステップごとに複数のSAPテーブルに分かれています。
| ステップ | SAPテーブル |
|---|---|
| 購買依頼 | EBAN |
| 購買発注 | EKKO(ヘッダー)、EKPO(明細) |
| 入庫 | MKPF(ヘッダー)、MSEG(明細) |
| 請求書受領 | BKPF(ヘッダー)、BSEG(明細) |
| 支払い | PAYR、REGUH |
SAP ECCではABAPレポートまたはカスタムプログラムでこれらのテーブルを読み取れます。SAP S/4HANAでは、CDSビュー、ODataサービス、またはSAP Datasphereを使用してください。各ステップについて、アクティビティ名、ケースID、タイムスタンプ(必要に応じてユーザー、金額、仕入先も含めます)を取得する簡潔なクエリを1つずつ作成し、結果を1つのイベントログにまとめます。
SELECT 'PO Created' AS Activity, EBELN AS CaseID, AEDAT AS Timestamp FROM EKKO
UNION
SELECT 'Goods Receipt', EBELN, BUDAT FROM MSEG JOIN MKPF ON MSEG.MBLNR = MKPF.MBLNR
UNION
SELECT 'Invoice Posted', BELNR, BUDAT FROM BKPF
ORDER BY CaseID, Timestamp; 抽出データが増える前に対象を絞ってください。すべてをエクスポートするのではなく、会社コード、文書タイプ、会計年度でフィルタリングします。
エクスポートの構造化
- イベントごとに1行:ケース全体ではなく、状態変更を1行で表します。
Case ID、Activity、Timestamp列に加え、分析したい任意の列(ユーザー、コスト、金額)を保持します。 - システム間でケースIDを統一:プロセスがERPとCRMにまたがる場合は識別子を対応付け、すべてのイベントが1つのケースに紐付くようにします。
- タイムゾーンを統一:異なるシステムのイベント順序を保つため、タイムスタンプをUTCまたは1つのタイムゾーンに統一します。
- アクティビティ名を統一:「Approve Order」と「Order Approval」は同じステップです。ステップごとに表記を1つに決めてください。
- 不要なデータを除外:テスト文書、キャンセル済みレコード、内部システムのステップは、インサイトを増やさずに行数だけを増やします。
ヘッダー行、区切り文字、タイムスタンプ形式はアップロード時に検出されます。要件の詳細はサポートされているデータ形式に記載されています。システムにステップがまったく存在しない場合は、データのクリーニングと準備で不足を補う方法を説明しています。
エクスポート前の個人データの処理
イベントログには通常、氏名、顧客番号、ユーザーIDが含まれます。分析に不要な情報は匿名化またはマスキングし、抽出データをダウンロードできるユーザーを制限してください。また、組織に適用される保持ルール(例:GDPR)に従ってください。ProcessMindではデータセットをテナントごとに保持し、アクセスはユーザーのロールとシートに従って制御されます。詳しくはユーザー、ロール、権限をご覧ください。
次のステップ:アップロードとマッピング
ログの構造化が完了したら、アップロードして列をデータセットにマッピングします。
- データセットを設定:ケースID、アクティビティ、タイムスタンプをマッピングし、データ品質バッジを確認します。
- データをモデルにマッピング:属性をアクティビティと接続に紐付けます。
- 継続的に増加するデータには、すべてを再読み込みする代わりに増分(差分)アップロードを使います。
独自のデータを抽出する前にフローを試したい場合は、サンプルファイルで用意済みのサンプルログを利用できます。
関連トピック
- プロセスマイニングに必要なデータ:すべてのログに必要な3つの列
- サポートされているデータ形式:ファイル形式と構造要件
- データのクリーニングと準備:アップロード前に抽出データを整え、よくある問題を修正
- データセットの設定:アップロードのマッピングと検証