(57)【要約】【課題】プロセス全体の把握、プロセス全体の最適化、およびサブプロセスの把握、サブプロセスの最適化を支援すること。【解決手段】本発明の一態様は、複数のタスクに対応する複数のノード、およびノード間の遷移関係を示すエッジを含むプロセス群から、少なくとも１つのノードを含む第１のサブプロセスと、少なくとも一つのノードを含む第２のサブプロセスとを接続する少なくとも２本のエッジを検索する検索部と、検索部により２本のエッジが検索された場合に、プロセス群を第１のサブプロセスと第２のサブプロセスとに分割する分割部とを備える、情報処理装置である。【選択図】図１
2020201601.tif 000002
【特許請求の範囲】
【請求項１】
複数のタスクに対応する複数のノード、および前記ノード間の遷移関係を示すエッジを含むプロセス群から、少なくとも１つのノードを含む第１のサブプロセスと、少なくとも一つのノードを含む第２のサブプロセスとを接続する少なくとも２本のエッジを検索する検索部と、
前記検索部により前記２本のエッジが検索された場合に、前記プロセス群を前記第１のサブプロセスと前記第２のサブプロセスとに分割する分割部と
を備える、情報処理装置。
【請求項２】
前記第１のサブプロセスは、前記プロセス群のスタートノードおよびエンドノードが接続されたサブプロセスであり、
前記第２のサブプロセスは、前記プロセス群のスタートノードおよびエンドノードが接続されていないサブプロセスであり、
前記検索部は、前記第１のサブプロセスから前記第２のサブプロセスへの遷移方向を持つ第１のエッジ、および前記第２のサブプロセスから前記第１のサブプロセスへの遷移方向を持つ第２のエッジを検索し、
前記分割部は、前記検索部により前記第１のエッジ、および前記第２のエッジが検索された場合に、前記プロセス群を前記第１のサブプロセスと前記第２のサブプロセスとに分割する、
請求項１に記載の情報処理装置。
【請求項３】
前記検索部は、前記分割部により前記プロセス群が前記第１のサブプロセスと前記第２のサブプロセスに分割された場合に、前記第１のサブプロセス、および前記第２のサブプロセスから、少なくとも１つのタスクを含む第３のサブプロセスと少なくとも一つのタスクを含む第４のサブプロセスとを接続する第３のエッジ、および第４のエッジを検索する、
請求項２に記載の情報処理装置。
【請求項４】
前記第３のサブプロセスは、前記プロセス群のスタートノードが接続されたサブプロセスであり、
前記第４のサブプロセスは、前記プロセス群のエンドノードが接続されたサブプロセスであり、
前記第３のエッジは、前記第３のサブプロセスから前記第４のサブプロセスへの遷移方向を持つエッジであり、
前記第４のエッジは、前記第４のサブプロセスから前記第３のサブプロセスへの遷移方向を持つエッジである、
請求項３に記載の情報処理装置。
【請求項５】
前記第３のサブプロセスは、前記プロセス群のスタートノードが接続されたサブプロセスであり、
前記第４のサブプロセスは、前記プロセス群のエンドノードが接続されたサブプロセスであり、
前記第３のエッジは、前記第３のサブプロセスから前記第４のサブプロセスへの遷移方向を持つエッジであり、
前記第４のエッジは、前記第３のサブプロセスから前記第４のサブプロセスへの遷移方向を持つエッジである、
請求項３に記載の情報処理装置。
【請求項６】
前記検索部は、前記分割部により前記第３のサブプロセスと前記第４のサブプロセスに分割された場合に、前記第３のサブプロセス、および前記第４のサブプロセスから、スタートノードが接続された第５のサブプロセスからエンドノードが接続された第６のサブプロセスへの遷移方向を持つ第５のエッジと、スタートノードが接続された第５のサブプロセスからエンドノードが接続された第６のサブプロセスへの遷移方向を持つ第６のエッジを検索する、
請求項４に記載の情報処理装置。
【請求項７】
前記検索部は、プロセス群のうち分割対象のサブプロセス同士を接続する３本のエッジを検索する、
請求項１に記載の情報処理装置。
【請求項８】
前記検索部は、サブプロセス同士を接続する少なくとも２本のエッジが複数検索された場合に、前記２本のエッジが接続するサブプロセス間の遷移回数が少ない方の２本のエッジを優先して検索する、
請求項１から７のうち何れか１項に記載の情報処理装置。
【請求項９】
複数のタスクに対応する複数のノード、および前記ノード間の遷移関係を示すエッジを含むプロセス群から、少なくとも１つのノードを含む第１のサブプロセスと、少なくとも一つのノードを含む第２のサブプロセスとを接続する少なくとも２本のエッジを検索し、
前記２本のエッジが検索された場合に、前記プロセス群を前記第１のサブプロセスと前記第２のサブプロセスとに分割する、
情報処理方法。
【請求項１０】
情報処理装置のプログラムであって、
複数のタスクに対応する複数のノード、および前記ノード間の遷移関係を示すエッジを含むプロセス群から、少なくとも１つのノードを含む第１のサブプロセスと、少なくとも一つのノードを含む第２のサブプロセスとを接続する少なくとも２本のエッジを検索させ、
前記２本のエッジが検索された場合に、前記プロセス群を前記第１のサブプロセスと前記第２のサブプロセスとに分割させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、およびプログラムに関する。
【背景技術】
【０００２】
従来より、例えば営業プロセス等の多数のタスクを含むプロセス群からサブプロセスを抽出する技術が知られている（例えば下記の特許文献１）。特許文献１に記載されたプロセス抽出装置は、イベントログ列の集合からプロセスを抽出する。これにより、プロセス抽出装置は、異なるサブプロセスが混在するイベントログからプロセスが変化する分岐点と分岐後のサブプロセスを獲得できるとしている。
【０００３】
具体的に、プロセス抽出装置は、イベントログ列の集合に基づいて、プロセスの分岐点となる可能性のある１以上の分岐点候補を獲得する獲得部と、分岐点候補ごとに各イベントログ列における分岐先の部分イベントログ列の集合を抽出し、抽出された部分イベントログ列の集合から分岐先のサブプロセスを獲得し、プロセスに関して要求される条件に対する最適化問題を、各分岐点候補と分岐点候補ごとに獲得されたサブプロセスとに関して解くことで、分岐点候補の中から前記プロセスの分岐点を選択する選択部と、を有している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−１６２２９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、例えば、ビジネスプロセスをタスクの集合として定義し、タスクの処理ログ(システムログ、営業日報など)からプロセス全体を把握し、ビジネスプロセスを改善する手法が提案されている。この手法は、例えばプロセスマイニングと称される。プロセスマイニングは、各タスクの前後関係、直列処理関係、または並列処理関係といった依存関係を考慮したうえで、ビジネスプロセス全体を洗い出し、ビジネスプロセスの特徴と問題点を知ることが重要となる。
【０００６】
従って、ビジネスプロセス等の複雑なプロセスを複数のサブプロセスに分割することで、プロセス全体の把握、プロセス全体の最適化、およびサブプロセスの把握、サブプロセスの最適化を推進することが望まれている。
【０００７】
本発明は、上記の課題に鑑みてなされたものであって、プロセス全体の把握、プロセス全体の最適化、およびサブプロセスの把握、サブプロセスの最適化を支援することができる情報処理装置、情報処理方法、およびプログラムを提供することを目的としている。
【課題を解決するための手段】
【０００８】
（１）本発明の一態様は、複数のタスクに対応する複数のノード、および前記ノード間の遷移関係を示すエッジを含むプロセス群から、少なくとも１つのノードを含む第１のサブプロセスと、少なくとも一つのノードを含む第２のサブプロセスとを接続する少なくとも２本のエッジを検索する検索部と、前記検索部により前記２本のエッジが検索された場合に、前記プロセス群を前記第１のサブプロセスと前記第２のサブプロセスとに分割する分割部とを備える、情報処理装置である。
【０００９】
（２）本発明の一態様は、上記の情報処理装置であって、前記第１のサブプロセスは、前記プロセス群のスタートノードおよびエンドノードが接続されたサブプロセスであり、前記第２のサブプロセスは、前記プロセス群のスタートノードおよびエンドノードが接続されていないサブプロセスであり、前記検索部は、前記第１のサブプロセスから前記第２のサブプロセスへの遷移方向を持つ第１のエッジ、および前記第２のサブプロセスから前記第１のサブプロセスへの遷移方向を持つ第２のエッジを検索し、前記分割部は、前記検索部により前記第１のエッジ、および前記第２のエッジが検索された場合に、前記プロセス群を前記第１のサブプロセスと前記第２のサブプロセスとに分割してよい。
【００１０】
（３）本発明の一態様は、上記の情報処理装置であって、前記検索部は、前記分割部により前記プロセス群が前記第１のサブプロセスと前記第２のサブプロセスに分割された場合に、前記第１のサブプロセス、および前記第２のサブプロセスから、少なくとも１つのタスクを含む第３のサブプロセスと少なくとも一つのタスクを含む第４のサブプロセスとを接続する第３のエッジ、および第４のエッジを検索してよい。
【００１１】
（４）本発明の一態様は、上記の情報処理装置であって、前記第３のサブプロセスは、前記プロセス群のスタートノードが接続されたサブプロセスであり、前記第４のサブプロセスは、前記プロセス群のエンドノードが接続されたサブプロセスであり、前記第３のエッジは、前記第３のサブプロセスから前記第４のサブプロセスへの遷移方向を持つエッジであり、前記第４のエッジは、前記第４のサブプロセスから前記第３のサブプロセスへの遷移方向を持つエッジであってよい。
【００１２】
（５）本発明の一態様は、上記の情報処理装置であって、前記第３のサブプロセスは、前記プロセス群のスタートノードが接続されたサブプロセスであり、前記第４のサブプロセスは、前記プロセス群のエンドノードが接続されたサブプロセスであり、前記第３のエッジは、前記第３のサブプロセスから前記第４のサブプロセスへの遷移方向を持つエッジであり、前記第４のエッジは、前記第３のサブプロセスから前記第４のサブプロセスへの遷移方向を持つエッジであってよい。
【００１３】
（６）本発明の一態様は、上記の情報処理装置であって、前記検索部は、前記分割部により前記第３のサブプロセスと前記第４のサブプロセスに分割された場合に、前記第３のサブプロセス、および前記第４のサブプロセスから、スタートノードが接続された第５のサブプロセスからエンドノードが接続された第６のサブプロセスへの遷移方向を持つ第５のエッジと、スタートノードが接続された第５のサブプロセスからエンドノードが接続された第６のサブプロセスへの遷移方向を持つ第６のエッジを検索してよい。
【００１４】
（７）本発明の一態様は、上記の情報処理装置であって、前記検索部は、プロセス群のうち分割対象のサブプロセス同士を接続する３本のエッジを検索してよい。
【００１５】
（８）本発明の一態様は、上記の情報処理装置であって、前記検索部は、サブプロセス同士を接続する少なくとも２本のエッジが複数検索された場合に、前記２本のエッジが接続するサブプロセス間の遷移回数が少ない方の２本のエッジを優先して検索してよい。
【００１６】
（９）本発明の一態様は、複数のタスクに対応する複数のノード、および前記ノード間の遷移関係を示すエッジを含むプロセス群から、少なくとも１つのノードを含む第１のサブプロセスと、少なくとも一つのノードを含む第２のサブプロセスとを接続する少なくとも２本のエッジを検索し、前記２本のエッジが検索された場合に、前記プロセス群を前記第１のサブプロセスと前記第２のサブプロセスとに分割する、情報処理方法である。
【００１７】
（１０）本発明の一態様は、情報処理装置のプログラムであって、複数のタスクに対応する複数のノード、および前記ノード間の遷移関係を示すエッジを含むプロセス群から、少なくとも１つのノードを含む第１のサブプロセスと、少なくとも一つのノードを含む第２のサブプロセスとを接続する少なくとも２本のエッジを検索させ、前記２本のエッジが検索された場合に、前記プロセス群を前記第１のサブプロセスと前記第２のサブプロセスとに分割させる、プログラムである。
【発明の効果】
【００１８】
本発明の一態様によれば、プロセス全体の把握、プロセス全体の最適化、およびサブプロセスの把握、サブプロセスの最適化を支援することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明を適用した第１実施形態に係る情報処理システムの一例を示すブロック図である。
【図２】所定のパターンを示す図であって、（Ａ）は従属パターンの一例を示し、（Ｂ）は手戻パターンの一例を示し、（Ｃ）は直列パターンの一例を示す。
【図３】所定のパターンを用いた処理例を示す図であり、（Ａ）はプロセス群の一例を示し、（Ｂ）は従属パターンに基づいて分割されたサブプロセスの一例を示し、（Ｃ）は手戻パターンに基づいて分割されたサブプロセスの一例を示す。
【図４】３本のカットエッジを含む所定のパターンを示す図であり、（Ａ）は従属パターンの一例を示し、（Ｂ）は手戻パターンの一例を示し、（Ｃ）は直列パターンの一例を示す。
【図５】実施形態のプロセス解析装置によりプロセス群を解析するときの処理手順の一例を示すフローチャートである。
【図６】プロセス群の一例を示す図である。
【図７】ステップＳ１０２の処理が施されたプロセス群の一例を示す図である。
【図８】プロセス群から抽出された２本以下のカットエッジを示す図である。
【図９】第１のサブプロセスのパターンを示す図である。
【図１０】第２のサブプロセスのパターンを示す図である。
【図１１】スタートノード側のサブプロセスのカットノードにエンドノードを追加したプロセス群を示す図である。
【図１２】エンドノード側のサブプロセスのカットノードにスタートノードを追加したプロセス群を示す図である。
【図１３】対象プロセス群から抽出されたカットエッジを示す図である。
【図１４】複数のサブプロセスに分割されたプロセスの全体を示す図である。
【図１５】プロセス全体におけるサブプロセスの関係を示す表示例を示す図であり、（Ａ）は、プロセス全体におけるサブプロセスの関係を示し、（Ｂ）はサブプロセスＡに従属しているサブプロセスがＢであることを示し、（Ｃ）はサブプロセスＡとサブプロセスがＢとが手戻であることを示す。
【発明を実施するための形態】
【００２０】
以下、本発明を適用した情報処理装置、情報処理方法、およびプログラムを、図面を参照して説明する。
【００２１】
本発明を適用した情報処理システムは、例えば、ビジネスプロセス（営業プロセス等）のプロセス全体の把握・最適化、およびサブプロセスの把握・最適化を支援するために、ビジネスプロセスの複数のサブプロセスに分割する。これにより、情報処理システムは、例えば、プロセス全体におけるボトルネックやベストプラクティスを推定することを支援することができる。また、情報処理システムは、ビジネスプロセス同士（成功例と失敗例）の比較により、ビジネスプロセスの改善点を容易に把握することを支援することができる。なお、以下の説明においてはビジネスプロセスを処理対象にするが、これに限定されず、複数のノードおよび複数のエッジを含むプロセス群を処理対象にしてよい。
【００２２】
以下の実施形態の説明において、情報処理システムは、複数のノード、およびノード間を接続するエッジを含むグラフ形式で表現したプロセス群を処理対象にする。各ノードは、例えば、営業プロセスにおける訪問、商品紹介、提案、見積提示、または受注という営業担当者が実施するタスクに相当する情報である。エッジとは、ノードそのもの繰り返しや、ノード間の遷移方向を示す情報である。なお、エッジには、ノードの繰り返し回数の情報、またはノード間の遷移方向に対応した遷移回数の情報が含まれてよい。
【００２３】
なお、ノードおよびエッジは、同等の意味を持つ他の用語に読み替えてよく、ノードおよびエッジが持つ固有の意味に限定されない。また、実施形態において、グラフ形式という用語は、ノードおよびノードを接続するエッジによりプロセス全体を表現する意味であるが、グラフ形式という用語は、以下に説明するグラフ形式の意味を持つ他の用語に読み替えてよい。また、以下の説明では、処理対象の複数のノードおよび複数のエッジをプロセス群と記載し、プロセス群を分割した少なくとも１つのノードを含むプロセス群をサブプロセスと記載する。
【００２４】
＜システム構成例＞
図１は、本発明を適用した第１実施形態に係る情報処理システムの一例を示すブロック図である。情報処理システムは、例えば、ユーザ端末装置１００と、スケジュール管理装置２００と、プロセス管理装置３００と、プロセス解析装置４００とを備える。プロセス解析装置４００は、情報処理装置の一例である。ユーザ端末装置１００、スケジュール管理装置２００、プロセス管理装置３００、およびプロセス解析装置４００は、ネットワークＮＷに接続される。ネットワークＮＷに接続される各装置は、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）や無線通信モジュールなどの通信インターフェースを備えている（図１では不図示）。ネットワークＮＷは、例えば、インターネット、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、セルラー網などを含む。なお、プロセス管理装置３００とプロセス解析装置４００は、本実施形態においては別体の装置群であるが、一体の装置であってよい。また、なお、スケジュール管理装置２００とプロセス管理装置３００とプロセス解析装置４００は、本実施形態においては別体の装置群であるが、一体の装置であってよい。
【００２５】
ユーザ端末装置１００は、スマートフォンなどの携帯電話、タブレット端末、パーソナルコンピュータ等である。ユーザ端末装置１００は、ブラウザやアプリケーションプログラムなどのＵＡ（Ｕｓｅｒ  Ａｇｅｎｔ）が起動する。ＵＡは、例えば、メッセージアプリ１１０である。メッセージアプリ１１０は、例えば、チャットボット（不図示）との間で対話処理を行うことで行動記録といった情報をスケジュール管理装置２００に提供する。また、ユーザ端末装置１００は、ＵＡとしてのブラウザを利用して、スケジュール管理装置２００から受信したコンテンツを表示する。
【００２６】
スケジュール管理装置２００は、スケジュール情報を管理するサーバ装置である。スケジュール管理装置２００は、例えば、ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）部２１０と、ＵＩ（Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）部２２０と、スケジュール管理部２３０と、スケジュールデータベース２４０とを備える。なお、ＡＰＩ部２１０、ＵＩ部２２０、およびスケジュール管理部２３０といった機能部は、例えばＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等のプロセッサがプログラムメモリに格納されたプログラムを実行することにより実現される。また、これらの機能部のうち一部または全部は、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、またはＦＰＧＡ（Ｆｉｅｌｄ-Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等のハードウェアにより実現されてもよいし、ソフトウェアとハードウェアが協働することで実現されてもよい。
【００２７】
ＡＰＩ部２１０は、ユーザ端末装置１００からの要求を受け付けた場合に、ユーザ端末装置１００からの要求に対する応答をユーザ端末装置１００に送信するインターフェースとして機能する。ＵＩ部２２０は、ユーザ端末装置１００からの要求を受け付けた場合に、ユーザ端末装置１００からの要求に対してスケジュールに関するコンテンツを提供するインターフェースとして機能する。
【００２８】
スケジュール管理部２３０は、ＡＰＩ部２１０やＵＩ部２２０により受け付けた要求などに基づいて、スケジュール情報の登録、削除、および変更などの処理を行う。また、スケジュール管理部２３０は、ＵＩ部２２０により受け付けた要求などに基づいて、当該要求に該当するスケジュール情報を抽出し、抽出したスケジュール情報をユーザ端末装置１００に提供する。
【００２９】
スケジュールデータベース２４０にはスケジュール情報が蓄積される。スケジュール情報は、例えば、顧客情報と、製品情報と、ユーザ情報と、活動予定の目的と、活動予定の日程と、行動記録情報と、を対応付けた情報である。
【００３０】
プロセス管理装置３００は、例えば、ノード取得部３１０と、エッジ生成部３２０と、プロセス記憶部３３０とを備える。ノード取得部３１０、およびエッジ生成部３２０といった機能部は、例えばＣＰＵ等のプロセッサがプログラムメモリに格納されたプログラムを実行することにより実現される。また、これらの機能部のうち一部または全部は、ＬＳＩ、ＡＳＩＣ、またはＦＰＧＡ等のハードウェアにより実現されてもよいし、ソフトウェアとハードウェアが協働することで実現されてもよい。
【００３１】
ノード取得部３１０は、スケジュールデータベース２４０に登録された行動記録情報から、プロセス群に含めるタスクに関する情報を取得し、タスクに対応するノードを生成する。ノード取得部３１０は、プロセス群のうちの一または複数のノードにスタートノードを接続する。また、ノード取得部３１０は、プロセス群のうちの一または複数のノードにエンドノードを接続する。エッジ生成部３２０は、スケジュールデータベース２４０に登録された複数の行動記録情報から、エッジを生成する。プロセス記憶部３３０は、ノード取得部３１０により取得されたノードと、エッジ生成部３２０により生成されたエッジとを含むプロセス群を表すプロセス群情報を記憶する。プロセス群情報は、例えば、営業担当者、顧客、製品ごとに生成される。
【００３２】
プロセス解析装置４００は、例えば、プロセス取得部４１０と、検索部４２０と、分割部４３０と、処理部４４０と、解析結果記録部４５０とを備える。なお、プロセス取得部４１０、検索部４２０、分割部４３０、処理部４４０、および解析結果記録部４５０といった機能部は、例えばＣＰＵ等のプロセッサがプログラムメモリに格納されたプログラムを実行することにより実現される。また、これらの機能部のうち一部または全部は、ＬＳＩ、ＡＳＩＣ、またはＦＰＧＡ等のハードウェアにより実現されてもよいし、ソフトウェアとハードウェアが協働することで実現されてもよい。
【００３３】
プロセス取得部４１０は、プロセス記憶部３３０に記憶されたプロセス群情報を取得する。検索部４２０は、プロセス群（対象プロセス群）に、所定のパターンに該当するノードおよびエッジの組み合わせが存在するかを検索する。分割部４３０は、検索部４２０による検索結果に基づいてプロセス群（対象プロセス群）を２つのサブプロセスに分割する。なお、対象プロセス群は、プロセス全体、またはサブプロセスである。処理部４４０は、分割部４３０により分割されたサブプロセスについてスタートノードやエンドノードの付加などの各種の処理を行う。解析結果記録部４５０は、処理部４４０により処理されたサブプロセスを含む解析結果を記憶する。
【００３４】
＜所定のパターン（カットエッジ：２本）＞
図２は、所定のパターンを示す図であって、（Ａ）は従属パターンであり、（Ｂ）は手戻パターンであり、（Ｃ）は直列パターンである。所定のパターンは、対象プロセス群から検索されるスタートノード、エンドノード、第１のサブプロセスおよび第２のサブプロセス、および、第１のサブプロセスと第２のサブプロセスとを接続する２本のエッジを含む。
【００３５】
従属パターンは、図２（Ａ）に示すように、プロセス群のスタートノードおよびエンドノードが接続されたサブプロセスＳＰ１と、プロセス群のスタートノードおよびエンドノードが接続されていないサブプロセスＳＰ２と、スタートノードとサブプロセスＳＰ１とを接続するエッジと、サブプロセスＳＰ１とエンドノードとを接続するエッジと、サブプロセスＳＰ１からサブプロセスＳＰ２への遷移方向を持つエッジＥ１と、サブプロセスＳＰ２からサブプロセスＳＰ１への遷移方向を持つエッジＥ２と、を含む。
【００３６】
手戻パターンは、図２（Ｂ）に示すように、プロセス群のスタートノードが接続されたサブプロセスＳＰ３と、プロセス群のエンドノードが接続されたサブプロセスＳＰ４と、スタートノードとサブプロセスＳＰ３とを接続するエッジと、サブプロセスＳＰ４とエンドノードとを接続するエッジと、サブプロセスＳＰ３からサブプロセスＳＰ４への遷移方向を持つエッジＥ３と、サブプロセスＳＰ４からサブプロセスＳＰ３への遷移方向を持つエッジＥ４と、を含む。
【００３７】
直列パターンは、図２（Ｃ）に示すように、プロセス群のスタートノードが接続されたサブプロセスＳＰ５と、プロセス群のエンドノードが接続されたサブプロセスＳＰ６と、スタートノードとサブプロセスＳＰ５とを接続するエッジと、サブプロセスＳＰ６とエンドノードとを接続するエッジと、サブプロセスＳＰ５からサブプロセスＳＰ６への遷移方向を持つエッジＥ５と、サブプロセスＳＰ５からサブプロセスＳＰ６への遷移方向を持つエッジＥ６と、を含む。
【００３８】
＜所定のパターンを用いた処理例＞
図３は、上述した所定のパターンを用いた処理例を示す図である。図３（Ａ）に示すようなプロセス群を処理対象にするものとする。検索部４２０は、対象プロセス群に、従属パターンに該当するノードとエッジの組み合わせが存在するかを検索する。検索部４２０は、図３（Ｂ）に示すように、スタートノードに接続された４つのタスクを含むサブプロセスＳＰａと、サブプロセスＳＰａからサブプロセスＳＰｂへの遷移方向を持つエッジＥａと、サブプロセスＳＰｂからサブプロセスへＳＰａの遷移方向を持つエッジＥｂとが、従属パターンに該当することを検出する。検索部４２０は、検索結果として、例えば、カットエッジとしてのエッジＥａおよびエッジＥｂを示す情報を分割部４３０に供給する。カットエッジとは、対象プロセス群を分割する境目となるエッジである。分割部４３０は、エッジＥａおよびエッジＥｂを示す情報に基づいて、対象プロセス群をサブプロセスＳＰａとサブプロセスＳＰｂとに分割する。
【００３９】
次に検索部４２０は、対象プロセス群を、サブプロセスＳＰａとサブプロセスＳＰｂに設定する。サブプロセスＳＰｂは、所定のパターンの何れにも該当しないので分割されない。検索部４２０は、図３（Ｃ）に示すように、サブプロセスＳＰａのうち、エッジＥｃおよびエッジＥｄと、エッジＥｃおよびエッジＥｄに接続されたスタートノード側の４つのタスクを含むサブプロセスＳＰａ１と、エッジＥｃおよびエッジＥｄに接続されたスタートノード側の４つのタスクを含むサブプロセスＳＰａ２とが、手戻パターンに該当することを検出する。検索部４２０は、検索結果として、例えば、カットエッジとしてのエッジＥｃおよびエッジＥｄを示す情報を分割部４３０に供給する。分割部４３０は、エッジＥｃおよびエッジＥｄを示す情報に基づいて、対象プロセス群としてのサブプロセスＳＰａをサブプロセスＳＰａ１とサブプロセスＳＰa２とに分割する。
【００４０】
以上のように、プロセス解析装置４００は、プロセスの全体を、３つのサブプロセスＳＰａ１、ＳＰａ２、およびＳＰｂに分割することができる。
【００４１】
＜所定のパターン（カットエッジ：３本）＞
図４は、３本のカットエッジを含む所定のパターンを示す図である。所定のパターンは、３本のカットエッジを含んでよい。従属パターンは、例えば図４（Ａ）に示すように、サブプロセスＳＰ１からサブプロセスＳＰ２に遷移方向を持つ２本のエッジと、サブプロセスＳＰ２からサブプロセスＳＰ１に遷移方向を持つ１本のエッジを含む。手戻パターンは、例えば図４（Ｂ）に示すように、サブプロセスＳＰ３からサブプロセスＳＰ４に遷移方向を持つ２本のエッジと、サブプロセスＳＰ４からサブプロセスＳＰ３に遷移方向を持つ１本のエッジを含む。直列パターンは、例えば図４（Ｃ）に示すように、サブプロセスＳＰ５からサブプロセスＳＰ６に遷移方向を持つ３本のエッジを含む。これにより、検索部４２０は、所定のパターンとして３本のエッジを持つパターンを用いて対象プロセス群に対して検索を行うことができる。
【００４２】
＜プロセス解析の処理手順＞
図５は、実施形態のプロセス解析装置４００によりプロセス群を解析するときの処理手順の一例を示すフローチャートである。図６は、プロセス群の一例を示す図である。以下、プロセス解析装置４００は、図５の処理を実行することにより、図６のプロセス群をサブプロセスに分割することを説明する。
【００４３】
まず、プロセス解析装置４００は、対象プロセス群からカットノードを抽出する（ステップＳ１００）。ステップＳ１００において、カットノードの長さＮを１とする。すなわち、プロセス解析装置４００は、対象プロセス群から一つのノードを抜くだけで、対象プロセス群が２つのサブプロセスに分割可能なノードを抽出する。プロセス解析装置４００は、図６のプロセス群に含まれるノードのうち、見積提示のノードをカットノードとして抽出する。Ｎ＝１のカットノードが複数存在する場合、プロセス解析装置４００は、複数のカットノードを抽出してよい。
【００４４】
次にプロセス解析装置４００は、各カットノードの２つのノードに疑似的に分割し、分割した２つのノード間を接続するカットエッジを生成する（ステップＳ１０２）。図７は、ステップＳ１０２の処理が施されたプロセス群の一例を示す図である。分割された２つのノードは、スタートノード側のノードＮｓと、エンドノード側のノードＮｅとを含む。スタートノード側のノードＮｓは、スタートノードに接続されたサブプロセスに接続される。エンドノード側のノードＮｅは、エンドノードに接続されたサブプロセスに接続される。生成されたカットエッジＣＥは、スタートノード側のノードＮｓからエンドノード側のノードＮｅへの遷移方向を持つ。ステップＳ１０２の処理が施されたプロセス群は、次の処理における対象プロセス群になる。
【００４５】
次に、プロセス解析装置４００は、対象プロセス群からカットエッジを抽出する（ステップＳ１０４）。ステップＳ１０４において、例えばカットエッジの長さＭを２とする。すなわち、プロセス解析装置４００は、対象プロセス群が２つのサブプロセスに分割可能な２本以下のカットエッジを検索し、抽出する。図８は、プロセス群から抽出された２本以下のカットエッジを示す図である。プロセス解析装置４００は、ステップＳ１０２において生成したスタートノード側の「見積提示」からエンドノード側の「見積提示」への遷移方向を持つ１本のカットエッジＣＥ１を抽出する。さらに、プロセス解析装置４００は、「関連商品チーム連携相談」から「連携ヒアリング準備」への遷移方向を持つカットエッジＣＥ２、および「連携ヒアリング準備」から「仕様ヒアリング」への遷移方向を持つカットエッジＣＥ３を含む２本のカットエッジを抽出する。
【００４６】
次に、プロセス解析装置４００は、ステップＳ１０４の結果、カットエッジが存在するか否かを判定する（ステップＳ１０６）。プロセス解析装置４００は、カットエッジが存在する場合（ステップＳ１０６：ＹＥＳ）、各カットエッジで分割された２つのサブプロセスのパターン（第１のサブプロセスのパターンおよび第２のサブプロセスのパターン）を作成する（ステップＳ１０８）。
【００４７】
図９は、第１のサブプロセスのパターンを示す図である。第１のサブプロセスのパターンは、サブプロセスＳＰ１１と、サブプロセスＳＰ１２とを含む。サブプロセスＳＰ１１は、スタートノードから疑似的に作成したスタートノード側の「見積提示」のノードまでのプロセス群を含むサブプロセスである。サブプロセスＳＰ１２は、疑似的に作成したエンドノード側の「見積提示」のノードからエンドノードまでのプロセス群を含むサブプロセスである。
【００４８】
図１０は、第２のサブプロセスのパターンを示す図である。第２のサブプロセスのパターンは、サブプロセスＳＰ１３と、サブプロセスＳＰ１４とを含む。サブプロセスＳＰ１４は、カットエッジＣＥ２およびＣＥ３により対象プロセス群から分割される「連携ヒアリング準備」のノードを含む。サブプロセスＳＰ１３は、対象プロセス群から「連携ヒアリング準備」のノードを除いたプロセス群である。
【００４９】
次にプロセス解析装置４００は、スタートノードおよびエンドノードが同一サブプロセスに含まれるパターンが存在するか否かを判定する（ステップＳ１１０）。これにより、プロセス解析装置４００は、分割パターンが従属パターンに該当するか否かを判定する。プロセス解析装置４００は、サブプロセスＳＰ１３がスタートノードおよびエンドノードが同一サブプロセスに含まれるので、当該サブプロセスＳＰ１３を含む分割パターンの存在を判定する（ステップＳ１１０：ＹＥＳ）。プロセス解析装置４００は、その他のサブプロセスＳＰ１１、ＳＰ１２、およびＳＰ１４がスタートノードおよびエンドノードが同一サブプロセスに含まれるパターンではないと判定する（ステップＳ１１０：ＮＯ）。
【００５０】
プロセス解析装置４００は、ステップＳ１１０において肯定判定をした場合、条件を満たすパターンのペアをすべて抽出する（ステップＳ１１２）。図１０に示すプロセス群の場合、ステップＳ１１０の条件を満たすパターンのペアとして、サブプロセスＳＰ１３とサブプロセスＳＰ１４のペアを抽出する。
【００５１】
次にプロセス解析装置４００は、各サブプロセスのペア内のスタートノードおよびエンドノードが含まれないサブプロセス間で包含関係がある場合には、最大範囲を持つサブプロセスのペアのみを抽出する（ステップＳ１１４）。
【００５２】
次にプロセス解析装置４００は、各サブプロセスのペア内の、スタートノードおよびエンドノードが含まれないサブプロセスと、スタートノードおよびエンドノードが含まれるサブプロセス間の遷移回数が最も小さいペアを選択する。そして、プロセス解析装置４００は、スタートノードおよびエンドノードを含むサブプロセスを主、スタートノードおよびエンドノードを含まないサブプロセスを従とする。プロセス解析装置４００は、従のサブプロセスを分割済みサブグラフに追加し、主のサブプロセスを分割前サブグラフに追加する（ステップＳ１１６）。
【００５３】
次にプロセス解析装置４００は、分割前サブプロセスのうち任意のサブプロセスを新たな対象プロセス群に設定する（ステップＳ１１８）。これにより、プロセス解析装置４００は、対象プロセス群についてステップＳ１００からの処理を繰り返す。
【００５４】
プロセス解析装置４００は、ステップＳ１１０において否定判定をした場合、任意の分割パターンを選択する（ステップＳ１２０）。プロセス解析装置４００は、任意の分割パターンとして、図９に示した分割パターンを選択する。
【００５５】
次にプロセス解析装置４００は、選択した分割パターンに含まれる２つのサブプロセス間の遷移方向が一方向であるか否かを判定する（ステップＳ１２２）。プロセス解析装置４００は、図９に示した２つのサブプロセスＳＰ１１からサブプロセスＳＰ１２への遷移方向が一方向であるので（ステップＳ１２２：ＹＥＳ）、２つのサブプロセスの関係が直列関係であると判定する（ステップＳ１２４）。次にプロセス解析装置４００は、スタートノード側のサブプロセスＳＰ１１のうちカットノードにエンドノードを接続し、エンドノード側のサブプロセスＳＰ１２のうちカットノードにスタートノードを接続する。図１１は、スタートノード側のサブプロセスのカットノードにエンドノードを追加したプロセス群を示す図である。図１２は、エンドノード側のサブプロセスのカットノードにスタートノードを追加したプロセス群を示す図である。
【００５６】
プロセス解析装置４００は、２つのサブプロセス間の遷移方向が一方向ではない場合（ステップＳ１２２：ＮＯ）、２つのサブプロセスの関係が手戻関係であると判定する（ステップＳ１２８）。
【００５７】
プロセス解析装置４００は、ステップＳ１２６、またはステップＳ１２８の後、２つのサブプロセスを分割前サブプロセスに追加し、ステップＳ１１８に処理を進める。
【００５８】
プロセス解析装置４００は、ステップＳ１１８において図１１に示したサブプロセスＳＰ１１を対象プロセス群に設定したものとする。この場合、プロセス解析装置４００は、ステップＳ１００においてカットノードが抽出できないためステップＳ１０２をスキップし、長さＭ＝２のカットエッジＣＥ１１およびカットエッジＣＥ１２を抽出する（ステップＳ１０４）。図１３は、対象プロセス群から抽出されたカットエッジを示す図である。プロセス解析装置４００は、カットエッジＣＥ１１およびカットエッジＣＥ１２により、サブプロセスＳＰ１１が、スタートノード側のサブプロセスＳＰ１１−１と、エンドノード側のサブプロセスＳＰ１１−２に分割する。
【００５９】
その後、プロセス解析装置４００は、スタートノード側のサブプロセスＳＰ１１−１と、エンドノード側のサブプロセスＳＰ１１−２とについて、ステップＳ１０８以降の処理を実行する。これにより、プロセス解析装置４００は、図１４に示すように、サブプロセスＳＰ１１−１とサブプロセスＳＰ１１−２とが直列関係であると判定し（ステップＳ１２４）、サブプロセスＳＰ１１−１にエンドノードを追加し、サブプロセスＳＰ１１−２にスタートノードを追加する（ステップＳ１２６）。図１４は、複数のサブプロセスに分割されたプロセスの全体を示す図である。
【００６０】
プロセス解析装置４００は、対象プロセス群についてカットエッジが存在しないと判定した場合（ステップＳ１０６：ＮＯ）、当該対象プロセス群を分割済みサブプロセスに追加する（ステップＳ１３２）。そして、プロセス解析装置４００は、分割前サブプロセスが存在する場合（ステップＳ１３４：ＹＥＳ）、ステップＳ１１８に処理を移行し、分割前サブプロセスが存在しない場合（ステップＳ１３４：ＮＯ）、本フローチャートの処理を終了する。
【００６１】
＜表示例＞
図１５は、プロセス全体におけるサブプロセスの関係を示す表示例を示す図である。図１５（Ａ）は、プロセス全体におけるサブプロセスの関係を示し、図１５（Ｂ）はサブプロセスＡに従属しているサブプロセスがＢであることを示し、図１５（Ｃ）はサブプロセスＡとサブプロセスがＢとが手戻であることを示す。
【００６２】
プロセス解析装置４００は、図１５（Ａ）に示すように、サブプロセスＳＰ１１−１に従属しているサブプロセスとして、サブプロセスＳＰ１４と、サブプロセスＳＰ１１−２およびサブプロセスＳＰ１２とが存在することを表示し、サブプロセスＳＰ１１−２に従属しているサブプロセスとして、サブプロセスＳＰ１２が存在することを表示する表示データを生成する。プロセス解析装置４００は、例えば表示データをユーザ端末装置１００に送信することで、図１５（Ａ）に示すようなサブプロセスの関係をユーザ端末装置１００に表示させることができる。
【００６３】
以上のように、プロセス解析装置４００によれば、プロセス全体を、４つのサブプロセスに分割することができる。これにより、プロセス解析装置４００は、複雑なプロセスを４つのサブプロセスに抽象化することができる。また、プロセス解析装置４００によれば、サブプロセスＳＰ１１−１とサブプロセスＳＰ１４とが従属関係であり、サブプロセスＳＰ１１−１とサブプロセスＳＰ１１−２とが前後関係であり、サブプロセスＳＰ１１−２とサブプロセスＳＰ１２とが前後関係であることを提示することができる。これにより、プロセス解析装置４００によれば、サブプロセス間の関係の把握を容易にすることができる。これにより、プロセス解析装置４００は、プロセス全体の最適化を検討させることができる。
【００６４】
プロセス解析装置４００は、サブプロセスＳＰ１１−１がプロセス全体の導入プロセスであり、サブプロセスＳＰ１４がサブプロセスＳＰ１１−１に対して例外的・従属的プロセスであり、サブプロセスＳＰ１１−２がプロセス全体を分割するプロセスであり、サブプロセスＳＰ１２がプロセス全体でクロージングに相当するプロセスといったように各サブプロセスの潜在的な意味合いを推定させることができる。また、プロセス解析装置４００は、各サブプロセス内のタスクを把握させることができ、これにより、プロセス解析装置４００は、各サブプロセスの最適化を検討させることができる。
【００６５】
以上説明した実施形態のプロセス解析装置４００によれば、タスクに対応するノード、およびノード間の遷移関係を示すエッジを含むプロセス群から、少なくとも１つのノードを含む第１のサブプロセスと、少なくとも一つのノードを含む第２のサブプロセスとを接続する少なくとも２本のエッジを検索し、２本のエッジが検索された場合に、プロセス群を第１のサブプロセスと第２のサブプロセスとに分割することができる。実施形態のプロセス解析装置４００によれば、複雑なプロセスを複数のサブプロセスに分割することで、プロセス全体の把握・最適化、およびサブプロセスの把握・最適化を支援することができる。プロセス解析装置４００は、例えば、分割した複数のサブプロセスの関係をユーザに提示することにより、プロセス群におけるボトルネックやベストプラクティスの推定作業を支援することができる。また、プロセス解析装置４００によれば、営業プロセス同士（成功例、失敗例）の比較により改善点を容易に把握させることできる。
【００６６】
また、実施形態のプロセス解析装置４００よれば、従属パターンを用いて対象プロセス群のうち分割対象のサブプロセスを検索することができる。これにより、プロセス解析装置４００によれば、スタートノードおよびエンドノードを含むサブプロセスと、スタートノードおよびエンドノードを含まないサブプロセスとに分割することができる。これにより、プロセス解析装置４００によれば、スタートノードおよびエンドノードを含むサブプロセスに従属するサブプロセスを明確に提示することができる。
【００６７】
さらに、実施形態のプロセス解析装置４００によれば、従属パターンで対象プロセス群を分割した後に、従属パターンとは異なる所定のパターンを用いて対象プロセス群を分割することができる。したがって、プロセス解析装置４００によれば、従属パターンを優先して、例えば例外的なサブプロセスを優先して分割することができる。
【００６８】
さらに、実施形態のプロセス解析装置４００によれば、手戻パターンを用いて対象プロセス群を分割することができる。これにより、プロセス解析装置４００によれば、あるサブプロセスから次のサブプロセスに進んだものの手戻りとなるサブプロセス間で分割を行うことができる。これにより、プロセス解析装置４００は、サブプロセス間で手戻りになる２つのサブプロセスを明確に提示することができる。
【００６９】
さらに、プロセス解析装置４００によれば、直列パターンを用いて対象プロセス群を分割することができる。これにより、プロセス解析装置４００は、あるサブプロセスから次のサブプロセスに進むために２つの遷移方法があることを明確に提示することができる。
【００７０】
さらに、プロセス解析装置４００によれば、手戻パターンを用いて対象プロセス群を分割した後に、直列パターンを用いて対象プロセス群を分割することにより、手戻りになるサブプロセス間を優先的に分割することができる。
【００７１】
さらに、プロセス解析装置４００によれば、サブプロセス同士を接続する３本のエッジを検索するので、３本のエッジで接続された従属関係、手戻関係、または直列関係のサブプロセス同士を分割することができる。
【００７２】
さらに、プロセス解析装置４００によれば、サブプロセス同士を接続する少なくとも２本のエッジが複数検索された場合に、２本のエッジが接続するサブプロセス間の遷移回数が少ない方の２本のエッジを優先して検索することができる。これにより、プロセス解析装置４００によれば、例外的なサブプロセスを優先的に分割することができる。
【００７３】
なお、各実施形態および変形例について説明したが、一例であってこれらに限られず、例えば、各実施形態や各変形例のうちのいずれかや、各実施形態の一部や各変形例の一部を、他の１または複数の実施形態や他の１または複数の変形例と組み合わせて本発明の一態様を実現させてもよい。
【００７４】
なお、本実施形態におけるユーザ端末装置１００、スケジュール管理装置２００、プロセス管理装置３００、およびプロセス解析装置４００の各処理を実行するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、当該記録媒体に記録されたプログラムを、コンピュータシステムに読み込ませ、実行することにより、ユーザ端末装置１００、スケジュール管理装置２００、プロセス管理装置３００、およびプロセス解析装置４００に係る上述した種々の処理を行ってもよい。
【００７５】
なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器などのハードウェアを含むものであってもよい。また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、フラッシュメモリなどの書き込み可能な不揮発性メモリ、ＣＤ−ＲＯＭなどの可搬媒体、コンピュータシステムに内蔵されるハードディスクなどの記憶装置のことをいう。
【００７６】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネットなどのネットワークや電話回線などの通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（例えばＤＲＡＭ（Ｄｙｎａｍｉｃ
Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ））のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、このプログラムを記憶装置などに格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。
【００７７】
ここで、プログラムを伝送する「伝送媒体」は、インターネットなどのネットワーク（通信網）や電話回線などの通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【００７８】
以上、本発明の実施形態について図面を参照して詳述したが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計なども含まれる。
【符号の説明】
【００７９】
１００  ユーザ端末装置
１１０  メッセージアプリ
２００  スケジュール管理装置
２１０  ＡＰＩ部
２２０  ＵＩ部
２３０  スケジュール管理部
２４０  スケジュールデータベース
３００  プロセス管理装置
３１０  ノード取得部
３２０  エッジ生成部
３３０  プロセス記憶部
４００  プロセス解析装置
４１０  プロセス取得部
４２０  検索部
４３０  分割部
４４０  処理部
４５０  解析結果記録部
【図１】
2020201601.tif 000003
【図２】
2020201601.tif 000004
【図３】
2020201601.tif 000005
【図４】
2020201601.tif 000006
【図５】
2020201601.tif 000007
【図６】
2020201601.tif 000008
【図７】
2020201601.tif 000009
【図８】
2020201601.tif 000010
【図９】
2020201601.tif 000011
【図１０】
2020201601.tif 000012
【図１１】
2020201601.tif 000013
【図１２】
2020201601.tif 000014
【図１３】
2020201601.tif 000015
【図１４】
2020201601.tif 000016
【図１５】
2020201601.tif 000017