JP2006338274A - 業務プロセスモデルの構造推定方法及びその装置 - Google Patents

業務プロセスモデルの構造推定方法及びその装置 Download PDF

Info

Publication number
JP2006338274A
JP2006338274A JP2005161446A JP2005161446A JP2006338274A JP 2006338274 A JP2006338274 A JP 2006338274A JP 2005161446 A JP2005161446 A JP 2005161446A JP 2005161446 A JP2005161446 A JP 2005161446A JP 2006338274 A JP2006338274 A JP 2006338274A
Authority
JP
Japan
Prior art keywords
business process
process model
activity
business
junction
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP2005161446A
Other languages
English (en)
Other versions
JP4380596B2 (ja
Inventor
Shiro Ogasawara
志朗 小笠原
Kenichi Tayama
健一 田山
Shingo Horiuchi
信吾 堀内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2005161446A priority Critical patent/JP4380596B2/ja
Publication of JP2006338274A publication Critical patent/JP2006338274A/ja
Application granted granted Critical
Publication of JP4380596B2 publication Critical patent/JP4380596B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】αアルゴリズムよりも複雑な業務プロセスモデルの構造も推定し、実際の業務プロセスモデルでは実行可能なすべての実行パターンが履歴中に含まれていることを必要としない業務プロセスモデルの構造推定方法及びその装置を提供する。
【解決手段】推定装置1により、業務プロセスモデルにおける処理に関する制約条件と業務プロセスモデルが持っている傾向を表す評価関数情報を予め事前知識設定部3に記憶し、履歴データベース2に記憶されている情報と事前知識設定部3に記憶されている制約条件及び評価関数情報から、案件に対応する業務プロセスモデルが満たすべき制約条件とこの業務プロセスモデルに対応する評価関数を制約条件・評価関数導出部4によって立式し、制約条件を満たし且つ立式した評価関数を最適化する数値的な解を整数計画問題ソルバ5によって求め、この数値的な解を、個々の処理単位でブロック化された業務プロセスモデルに変換して提示する。
【選択図】図1

Description

本発明は、業務システムを用いて業務を行った際に業務システム上に自動的に残された履歴を利用して、計算機により業務分析を支援する技術に関し、特に業務プロセスモデルの構造を推定して提示する方法及びその装置に関するものである。
企業では顧客からの注文や社内での決裁或いは他企業への発注といった案件に対する処理を行う業務を効率的に行うため、案件に対する処理の進め方を表した業務プロセスモデルを作成し、それにあわせて多くの業務システムが構築され、利用されている。
業務効率をさらに向上させるための業務改善活動では、業務上の問題点を発見して解決するために、業務プロセスモデルの見直しを行う。業務上の問題点の発見は、現状の業務プロセスモデルに基づいて行われるが、以下の理由のために現状の業務プロセスモデルは業務システム構築時に想定された業務プロセスモデルと一致するとは限らないため、別途現状把握を行う必要がある。
・業務が複雑、多様であると、異常処理も含めたすべての場合の処理の進め方を業務システム導入前に洗い出し、業務プロセスモデル中に表現しておくことは困難である。そのため実際には必要に応じて、業務システム構築時に想定された業務プロセスモデルでは表現されていない処理の進め方で業務を行う場合がある。
・処理する案件の種類や数は時間の経過とともに変動する。また案件を処理する作業者のスキルも時間の経過とともに変動する。これら時間的な変動の影響により、実際の業務プロセスモデルも次第に変化し得る。
・1個の業務システムで行われる狭い範囲の業務では、想定された業務プロセスモデルに従って処理を進めるように、業務システムによって強制できるのに対し、複数の業務システムにまたがる広い範囲の業務ではそのような強制ができない。したがって実際の業務プロセスモデルが変化するのを妨げられるとは限らない。
現状把握は通常、ヒアリングや観察によって行われる。これにはコンサルタントや複数の部署の業務管理者が現場に赴かなければならず、また大勢の現場の作業者が協力する必要がある。そのため多くの労力と時間がかかり、業務改善活動を困難なものにしている。
現状把握にかかる労力と時間の削減を目的として、業務システム上に自動的に残される業務実行時の履歴から現状の業務プロセスモデルを把握する製品や手法が提案されている。
ただし業務プロセスモデルは以下のような情報を含むものとする。
(I1) アクティビティモデルの種類
どのような処理が存在するのか、という情報
(I2) アクティビティモデル間の関係
案件に対してどの順番で処理が行われ、どこからどこまで処理が並列に実行されるのか、という規則
(I3) アクティビティモデルの実行規則
処理の実行に際して、複数の案件を一括処理するのか逐次処理するのか、逐次処理の場合には案件を到着順に処理するのか任意の順に処理するのか、という規則
(I4) アクティビティモデルのリソース割当規則
処理の実行に際して、人的・物的リソースを割当てるための規則
(I5) アクティビティモデルの実行時間分布
各処理の開始から終了までにどのくらいの時間を要するか、という情報
(I6) 分岐における判断条件
アクティビティモデル間の関係において、ある処理の後に実行できる処理が複数存在する場合、どの場合にはどの処理を行うのか、という規則
尚、ここでは、業務プロセスモデルをA、Aに含まれるアクティビティモデルの個数を|A|で表す。アクティビティモデルに対しては、任意の方法で1から|A|までの番号を一意に付与し、i番目のアクティビティモデルをaiで表す。
〔処理の回数・時間・コストを算出するEAI製品付属の履歴分析ツール〕
例えば業務システムのミドルウェアとして使用されるEnterprise Application Integration(以下EAIと称する)製品には、履歴分析ツールが付随しているものがある。この履歴分析ツールは、EAI製品上であらかじめ定義された業務プロセスモデルに沿って実行された処理に対し、実行回数や処理時間、コスト等の集計値、統計値を業務分析者に提供する。
しかし個々の業務システム内で行われる処理のみを分析対象としているため、どのような処理があるのか、どの処理からどの処理へ遷移するのか、あるいはどこで分岐、合流するのか、といった業務プロセスモデルの構造(I1),(I2)の定義はEAI製品にあらかじめ与えられていることを前提としており、業務プロセスモデルの構造を推定する機能はもたない。そのため複数の業務システムにまたがって行われる業務を業務改善の対象とした場合には、上記履歴分析ツールでは分析対象の業務プロセスモデルの構造を知ることはできない。
〔業務プロセスモデルの構造推定手法〕
業務実行時の履歴から業務プロセスモデルの構造を推定する手法も検討されている。
ここで履歴には、処理内容とその処理の対象となった案件の識別子、および処理の実行順序に関する情報が最低限含まれているものとする。また履歴には、これら以外に処理の実行者や処理結果、処理に使用されたデータ等が含まれることもある。
案件に対する処理の進め方を表す業務プロセスモデルの構造は、図11に示す開始ノード、終了ノード、ORジャンクション、ANDジャンクション、アクティビティノードを有向リンクで接続した有向グラフとして表現される。
図11に示すように、開始ノードは、業務プロセスの開始点を表し、入力リンクを持たずに1個以上の出力リンクを持つ構造を有し、その動作としては1個の出力リンク先ノードに遷移する。
終了ノードは、業務プロセスの終了点を表し、出力リンクを持たずに1個以上の入力リンクを持つ構造を有し、その動作としては1個の入力リンクもとノードから遷移する。
ORジャンクションは、選択的な合流・分岐点を表し、1個以上の入力リンクと1個以上の出力リンクを持つ構造を有し、その動作としては1個の入力リンクもとノードから遷移し、1個の出力リンク先ノードに遷移する。
ANDジャンクションは、並列的な合流・分岐点を表し、1個以上の入力リンクと1個以上の出力リンクを持つ構造を有し、その動作としては全ての入力リンクもとノードから遷移し、全ての出力リンク先ノードに遷移する。
アクティビティノードは、アクティビティモデルを表し、1個以上の入力リンクと1個以上の出力リンクを持つ構造を有し、その動作としては全ての入力リンク先ノードから遷移し、全ての出力リンク先ノードに遷移する。
また、案件に対する処理の進め方を表す業務プロセスモデルの構造を表す有向グラフは、開始ノードと終了ノードを1個ずつ含む。またこの有向グラフ中では、どのノードも、開始ノードから有向リンクを順向きにたどることで到達可能であり、かつ終了ノードから有向リンクを逆向きにたどることでも到達可能である。尚、これ以降の説明では、アクティビティモデルaiのノードから、有向リンクを順向きにたどることで他のアクティビティモデルのノードを介さずにアクティビティモデルai'のノードへ到達できる場合、「aiはai'のリンク元アクティビティモデルである」、「ai'はaiのリンク先アクティビティモデルである」ということにする。
履歴から業務プロセスモデルの構造を推定するためには、業務プロセスモデル中に存在するアクティビティモデルの種類(I1)と、その間のリンク関係(I2)を求める必要がある。業務プロセスモデル中のアクティビティモデルの種類は履歴中の処理内容をリストアップすることで容易に把握可能であるのに対し、アクティビティモデル間の関係は把握が困難である。例えば履歴から、ある案件に対してアクティビティモデルaiの直後にアクティビティモデルai'が実行されたことがわかっても、その案件に対する複数の処理が並列に実行される可能性を考えると、現状の業務プロセスモデルにおいてaiがai'のリンク元アクティビティモデルであるとは限らない。したがってアクティビティモデル間のリンク関係を求めることが問題の中心である。
同一案件に対する並列処理を含む業務プロセスモデルのアクティビティモデル間のリンク関係を推定する手法としてαアルゴリズム(Wil van der Aalst, Ton Weijters, Laura Maruster: "Workflow Mining: Discovering Process Models from Event Logs," IEEE Transactions on Knowledge and Data Engineering, Vol. 16, No.9, pp.1128-1142, 2004.)(非特許文献1)が提案されている。αアルゴリズムでは、例えば図12に示すように、並列処理の開始、終了を、ANDジャンクションを用いずにアクティビティノードが複数の入力リンクと出力リンクを持つことで表現し、その表現方法で表される範囲内で業務プロセスモデルの構造を推定する。図12は、αアルゴリズムにおける並列処理の表現方法を表したもので、開始ノード10は出力リンク先ノードとなるアクティビティノードa1(11)にリンクされ、アクティビティノードa1(11)は出力リンク先ノードとなる2つのORジャンクション15,16にリンクされている。また、ORジャンクション15は出力リンク先ノードとなるアクティビティノードa2(12)にリンクされ、ORジャンクション16は出力リンク先ノードとなるアクティビティノードa3(13),a4(14)にリンクされている。これにより、a1実行後、a2とa3を並列に実行するか或いはa2とa4を並列に実行するプロセスが表現されている。
また、現状の業務プロセスモデルで可能なすべての実行パターンが履歴に含まれていること(履歴の完全性)を前提とし、以下の手順で業務プロセスモデルの構造を推定する。
STEP1:1個のアクティビティモデルの組[a1,a2],[a1,a3],…それぞれについて履歴中での同一案件に関するアクティビティモデルの実行順序から個別にアクティビティモデル間の関係を図13に示す規則にしたがって決定する。
STEP2:アクティビティモデル間の関係を統合することでORジャンクションの有無を決定する。
図13は、αアルゴリズムにおいて履歴からアクティビティモデルの関係を決定する規則を示し、アクティビティトレースの出現順序に関する条件に対応するアクティビティモデル間の関係を表している。即ち、「aiがai'の直前に実行される場合はあるが、直後には実行されない。」という条件のときは「aiはai'のリンク元アクティビティもである。(ai→ai')」という関係を有し、「aiがai'の直後に実行される場合はあるが、直前には実行されない。」という条件のときは「aiはai'のリンク先アクティビティもである。(ai←ai')」という関係を有する。また、「aiがai'の直前にも直後にも実行される。」という条件のときは「aiとai'は並列に実行されるアクティビティモデル。(ai‖ai')」という関係を有し、「aiがai'の直前にも直後にも実行されない。」という条件のときは「それ以外。(ai≠ai')」という関係を有する。
Wil van der Aalst, Ton Weijters, Laura Maruster: "Workflow Mining: Discovering Process Models from Event Logs," IEEE Transactions on Knowledge and Data Engineering, Vol. 16, No.9, pp.1128-1142, 2004.
従来の業務プロセスモデルの構造推定手法では並列処理を含む業務プロセスモデルを、ANDジャンクションを用いずに表現して推定するため、遷移元あるいは遷移先のアクティビティモデルの数が場合によって異なる業務プロセスモデルの構造を推定できない場合がある。例えば図14のように、アクティビティモデルa1の実行後にアクティビティモデルa2のみに遷移する場合と、アクティビティモデルa2,a3,a4のすべてに遷移する場合が存在するような業務プロセスモデルを扱うことができず、推定結果として得られる業務プロセスモデルではすべてに遷移する場合しか許されない。
また従来の業務プロセスモデルの構造推定手法では、図15及び図16に示すように、開始ノード、終了ノード、ORジャンクション、アクティビティノードから構成される業務プロセスモデルの構造に対しても、「ORジャンクションのリンク先アクティビティノードが複数ある場合、それらのアクティビティノードは各々入力リンクを1個しかもたない」、「複数のORジャンクションから1個のアクティビティノードへのリンクが存在する場合、それらのORジャンクションは各々入力リンクを1個しか持たない」等のさらに厳しい制限を設けている。現状の業務プロセスモデルがこれらの制限を満たしているとは限らず、どのような推定手法を用いても推定結果は現状の業務プロセスモデルと異ならざるを得ない。
また上記従来手法では現状の業務プロセスモデルで可能なすべての実行パターンが履歴に含まれていることを前提としているが、実際に得られる履歴がこの条件を満たしている可能性は極めて低い。
業務プロセスモデルの構造推定においてアクティビティモデル間の関係を求めることは、履歴中に出現するアクティビティモデルから構成される有向グラフの集合の中から、現状の業務プロセスモデルを探索することだと考えられる。その際、与えられた履歴に含まれる情報から探索範囲を絞り込んでいく。
履歴の完全性が満たされない場合、従来手法では上記STEP1でアクティビティモデル間の関係を決定する際に、必ず、余分なリンク関係を検出したり或いは必要なリンク関係を見落とすことになる。そのためαアルゴリズムでは、与えられた履歴のもとで常に成り立つとは限らない、即ち、リンクの有無に関する断定的な条件によって探索範囲を絞り込むことになり、真の現状の業務プロセスモデルが解の候補から外れ、最終的に誤った業務プロセスモデルを推定結果として得ることになる。また、推定結果として得られる業務プロセスモデルは与えられた履歴を出力可能であることも保障されないため、各案件に対してどのように処理が進められたかを知ることもできず、推定結果から現状の業務プロセスモデルの特徴を捉えることもできない。
また、履歴が完全でない場合には、処理の実行順序情報のみから正しく業務プロセスモデルの構造を推定することは、どのような手法を用いても不可能であるため、それ以外に利用できる情報、例えば処理の実行者、或いは業務分析者があらかじめ知っている断片的な知識も一緒に考慮して推定を行うことにより推定精度を向上する必要がある。しかし、上記STEP1でアクティビティモデル間の関係を決定する際には各関係を個別に決定するため、処理の実行順序以外に利用できる情報が各関係を個別に決定できる情報でなければ利用できない。つまり「アクティビティモデルaiはアクティビティモデルai'のリンク元ではない」、「アクティビティモデルaiがアクティビティモデルai'のリンク先である可能性はアクティビティモデルaiがアクティビティモデルai"のリンク先である可能性よりも低い」といった情報はアクティビティモデルaiとアクティビティモデルai'の関係を個別に決定できないため、推定精度の向上に利用することは困難である。また、上記STEP1で一度解の候補から外れてしまった業務プロセスモデルは、その後いくら条件を追加しても解の候補にはなりえないため、精度向上にはつながらない。
〔本発明の目的〕
本発明は、αアルゴリズムよりも複雑な業務プロセスモデルの構造も推定し、さらに、実際の業務プロセスモデルでは実行可能なすべての実行パターンが履歴中に含まれていることを必要としないで業務プロセスモデルの構造を推定して提示できる業務プロセスモデルの構造推定方法及びその装置を提供することを目的とする。また、現状の業務プロセスモデルの特徴をより正確に捉えられるようにするため、真の現状の業務プロセスモデルが解となり得るようにするとともに、処理の実行者に関する情報、あるいは業務分析者があらかじめ知っている断片的な知識を併せて利用することで、推定精度の向上を図れるようにすることを目的とする。
本発明は、上記の目的を達成するために、コンピュータ装置からなる業務システムによって所定案件に対して実行された業務における処理の履歴が記録されている履歴蓄積手段を備えた推定装置を用い、前記履歴蓄積手段に蓄積されている案件に対して前記業務システムによって実行される業務における処理の進め方を表した業務プロセスモデルの構造を前記推定装置によって推定して提示する業務プロセスモデルの構造推定方法であって、前記推定装置は、前記業務プロセスモデルにおける処理の進め方に関する制約条件と該業務プロセスモデルが持っている傾向を表す評価関数に関する情報を予め記憶し、前記履歴蓄積手段に記憶されている情報と前記制約条件及び評価関数に関する情報から、前記案件に対応する業務プロセスモデルが満たすべき制約条件と該業務プロセスモデルに対応する評価関数を立式し、前記立式した制約条件を満たし且つ前記立式した評価関数を最適化する数値的な解を求め、前記数値的な解を、個々の処理を単位としてブロック化された1つの業務プロセスモデルに変換して提示する業務プロセスモデルの構造推定方法を提案する。
本発明の業務プロセスモデルの構造推定方法によれば、前記案件に対応する業務プロセスモデルが満たすべき制約条件と該業務プロセスモデルに対応する評価関数が立式され、該立式された制約条件を満たし且つ前記立式された評価関数を最適化する数値的な解が求められ、この数値的な解がブロック化された1つの業務プロセスモデルに変換されて提示される。
さらに、本発明では、上記の業務プロセスモデルの構造推定方法において、1つの処理をブロックとなし、該1つの処理ブロックは、1つの処理ノードと、該処理ノードの入力側に出力側がリンクされた1つのORジャンクションと、前記処理ノードの出力側に入力側がリンクされた1つのORジャンクションと、前記入力側のORジャンクションの入力側に出力側がリンクされた1つ以上のANDジャンクションと、前記出力側のORジャンクションの出力側に入力側がリンクされた1つ以上のANDジャンクションとからなるものとして、前記ブロック化された業務プロセスモデルを1つ以上の処理ブロックによって表して提示する業務プロセスモデルの構造推定方法を提案する。
本発明によれば、個々の処理を単位としてブロック化された処理ブロックによって業務プロセスモデルが表現されるため、遷移元及び遷移先の処理ブロックの組合せがどのような業務プロセスモデルであっても推定対象として扱えるようになる。さらに、現状の業務プロセスモデルで可能なすべての実行パターンが履歴に含まれるか否かによらず、与えられた履歴をすべて出力可能であるという常に成立する条件によって解の候補を絞り込むことができるので、真の業務プロセスモデル或いはそれに類似した業務プロセスモデルを推定して提示する可能性が高まる。
また、本発明は、上記の目的を達成するために、コンピュータ装置からなる業務システムによって所定案件に対して実行された業務における処理の履歴が記録されている履歴蓄積手段を備え、前記履歴蓄積手段に蓄積されている案件に対して前記業務システムによって実行される業務における処理の進め方を表した業務プロセスモデルの構造を推定して提示する業務プロセスモデルの構造推定装置であって、前記業務プロセスモデルにおける処理の進め方に関する制約条件と該業務プロセスモデルが持っている傾向を表す評価関数に関する情報が記憶されている事前知識設定部と、前記履歴蓄積手段と前記事前知識設定部に記憶されている情報から、前記案件に対応する業務プロセスモデルが満たすべき制約条件と該業務プロセスモデルに対応する評価関数を、整数計画問題ソルバが利用できる形式で立式する制約条件・評価関数導出部と、前記制約条件・評価関数導出部から与えられた制約条件を満たし且つ評価関数を最適化する数値的な解を求めて出力する前記整数計画問題ソルバと、前記整数計画問題ソルバが出力する数値的な解を、個々の処理を単位としてブロック化された1つの業務プロセスモデルに変換して提示する結果提示部とを備えている業務プロセスモデルの構造推定装置を提案する。
本発明の業務プロセスモデルの構造推定装置によれば、事前知識設定部には、前記業務プロセスモデルにおける処理の進め方に関する制約条件と該業務プロセスモデルが持っている傾向を表す評価関数に関する情報が予め記憶されている。また、制約条件・評価関数導出部によって、前記履歴蓄積手段と前記事前知識設定部に記憶されている情報から、前記案件に対応する業務プロセスモデルが満たすべき制約条件と該業務プロセスモデルに対応する評価関数が整数計画問題ソルバが利用できる形式で立式され、前記整数計画問題ソルバは、前記制約条件・評価関数導出部から与えられた制約条件を満たし且つ評価関数を最適化する数値的な解を求めて出力する。さらに、結果提示部によって、前記整数計画問題ソルバが出力する数値的な解が、個々の処理を単位としてブロック化された1つの業務プロセスモデルに変換されて提示される。
さらに、本発明では、上記の業務プロセスモデルの構造推定装置において、1つの処理をブロックとなし、該1つの処理ブロックは、1つの処理ノードと、該処理ノードの入力側に出力側がリンクされた1つのORジャンクションと、前記処理ノードの出力側に入力側がリンクされた1つのORジャンクションと、前記入力側のORジャンクションの入力側に出力側がリンクされた1つ以上のANDジャンクションと、前記出力側のORジャンクションの出力側に入力側がリンクされた1つ以上のANDジャンクションとからなるものとして、前記ブロック化された業務プロセスモデルを1つ以上の処理ブロックによって表して提示する業務プロセスモデルの構造推定装置を提案する。
本発明によれば、個々の処理を単位としてブロック化された処理ブロックによって業務プロセスモデルが表現されるため、遷移元及び遷移先の処理ブロックの組合せがどのような業務プロセスモデルであっても推定対象として扱えるようになる。さらに、現状の業務プロセスモデルで可能なすべての実行パターンが履歴に含まれるか否かによらず、与えられた履歴をすべて出力可能であるという常に成立する条件によって解の候補を絞り込むことができるので、真の業務プロセスモデル或いはそれに類似した業務プロセスモデルを推定して提示する可能性が高まる。
本発明の業務プロセスモデルの構造推定方法及びその装置によれば、業務プロセスモデルを、個々の処理を単位としてブロック化された業務プロセスモデルにより表現することで、遷移元および遷移先の処理ブロックの組合せがどのような業務プロセスモデルであっても推定対象として扱えるようになる。また現状の業務プロセスモデルで可能なすべての実行パターンが履歴に含まれるか否かによらず、与えられた履歴をすべて出力可能であるという常に成立する条件によって解の候補を絞り込むことで、真の業務プロセスモデル或いはそれに類似した業務プロセスモデルが推定結果となる可能性を高める。これらにより現状の業務プロセスモデルの構造を履歴から高い精度で自動的に推定して提示できるようになるため、業務分析者は業務改善活動において時間と労力をかけずに現状業務の概略を現場に赴く前に把握できるようになり、その後の現場での現状業務の把握や問題点の分析を従来に比べて効率的に行えるようになる。その結果、継続的な業務改善活動が可能となり、業務プロセスを最適な状態に保つことが容易になる。
さらに、処理の実行順序情報にあわせて、処理の実行者情報や、業務分析者が分析対象の業務プロセスモデルの構造についてあらかじめ知っている、同一実行者は同じ案件に対して並列処理を行わないことを仮定できるか否か、実行者が異なる処理間での遷移は実行者が同じ処理間での遷移よりも起こりにくいことを仮定できるか否か、各アクティビティモデル間のリンクが存在する可能性は他に比べてどのくらい低いか、という知識も利用した推定を行えるようにすることで、推定精度の向上を図ることができる。
以下、図面を参照して本発明の一実施形態を説明する。
〔装置構成の概要〕
図1は本発明の一実施形態における業務プロセスモデルの構造推定装置の構成を示すブロック図である。図において、1はコンピュータ装置からなる業務プロセスモデルの構造推定装置(以下、推定装置と称する)で、履歴データベース(履歴蓄積手段)2、事前知識設定部3、制約条件・評価関数導出部4、整数計画問題ソルバ5、結果提示部6、操作部7から構成されている。
履歴データベース2は、図示しないコンピュータ装置からなる業務システムによって業務が実行された際、この業務実行時に残された履歴をデータベースまたはファイルに保持する。尚、履歴データベースに蓄積されている情報には、処理の実行順序情報および処理の実行者に関する情報も含まれている。
事前知識設定部3には、業務プロセスモデルにおける処理の進め方に関する制約条件と業務プロセスモデルが持っている傾向を表す評価関数に関する情報が記憶されている。制約条件としては、業務分析者が分析対象の業務プロセスモデルの構造についてあらかじめ知っている知識が情報として予め記憶されている。例えば、同一実行者は同じ案件に対して並列処理を行わないことを仮定できるか否か、実行者が異なる処理間での遷移は実行者が同じ処理間での遷移よりも起こりにくいことを仮定できるか否か、各アクティビティモデル間のリンクが存在する可能性は他に比べてどのくらい低いか、という知識の情報が制約条件として予め事前知識設定部3に保持されている。
制約条件・評価関数導出部4は、業務プロセスモデルがブロック化された業務プロセスモデル(以下、ブロック化業務プロセスモデルと称する)として表現されることを前提として、後述する図6に示す手順により、履歴データベース2と事前知識設定部3に保持されている情報から、業務プロセスモデルが満たすべき制約条件と、業務プロセスモデルが持っている傾向を表す評価関数を、整数計画問題ソルバが利用できる形式で立式する。
整数計画問題ソルバ5は、制約条件・評価関数導出部4から与えられた制約条件を満たし且つ評価関数を最適化する数値的な解を求める。
結果提示部6は、整数計画問題ソルバ5が出力する数値的な解を、後述する図7乃至図10に示す手順によりブロック化された1つの業務プロセスモデルに変換して業務分析者に提示する。
操作部7は、コンピュータ装置のキーボードやマウス及び表示器から構成され、業務分析者によって、業務プロセスモデルにおける処理の進め方に関する制約条件と該業務プロセスモデルが持っている傾向を表す評価関数に関する情報を事前知識設定部3に入力できるようにする。
上記構成よりなる推定装置1は、次の(a)〜(e)を特徴としている。
(a) 遷移元及び遷移先のアクティビティモデルの組合せがどのような業務プロセスモデルであっても推定対象として扱えるようにするために、1個のアクティビティノードがリンク元及びリンク先のそれぞれにORジャンクションを1個ずつもち、さらにそれぞれのORジャンクションがリンク元またはリンク先にANDジャンクションを1個以上もつアクティビティブロックを単位としたブロック化業務プロセスモデルにより業務プロセスモデルを扱うこと。
(b) 現状の業務プロセスモデルで可能なすべての実行パターンが履歴に含まれるか否かによらず、真の業務プロセスモデルあるいはそれに類似した業務プロセスモデルが推定結果となる可能性を高めるために、有向グラフの集合の中から現状の業務プロセスモデルの構造を探索する際に、与えられた履歴をすべて出力可能であるという常に成立する条件によって解の候補を絞り込むこと。
(c) 推定精度を向上させるために、処理の実行順序情報に加えて、処理の実行者情報や、業務分析者が分析対象の業務プロセスモデルの構造についてあらかじめ知っている知識に関する情報、すなわち同一実行者は同じ案件に対して並列処理を行わないことを仮定できるか否か、実行者が異なる処理間での遷移は実行者が同じ処理間での遷移よりも起こりにくいことを仮定できるか否か、各アクティビティモデル間のリンクが存在する可能性は他に比べてどのくらい低いか、という知識に関する情報も、現状の業務プロセスモデルの構造を探索する際の制約条件あるいは評価関数として利用すること。
(d) 現状の業務プロセスモデルを推定するため制約条件を満たし、評価関数を最適にする業務プロセスモデルの構造を探索する際に、アクティビティモデル間のリンクの有無やアクティビティインスタンス間の遷移の有無を整数変数で表し、制約条件と評価関数をそれら整数変数に関する線形式として表すことで、解の探索を整数計画問題の求解として実現すること。
(e) 整数計画問題を解くにあたり同時に値を求める変数の数を減らすため、制約条件を、アクティビティモデル間のリンクの有無のみに関する条件に書き換え、分割して解くこと。
以下に本実施形態の詳細を説明する。
遷移元及び遷移先のアクティビティモデルの組合せがいかなるものであってもアクティビティモデル間の関係を正しく表現した業務プロセスモデルの構造を推定して提示できるようにするためには、ORジャンクションとANDジャンクションを組合せて使用できる必要がある。
一方、ORジャンクションとANDジャンクションは履歴として残らないため、それぞれいくつあるかもわからない。そのためORジャンクションとANDジャンクションが業務プロセスモデル中の任意の場所にあることを許すと、アクティビティノード間をどのように接続するかの自由度が大きくなり、推定が困難になる。したがって業務プロセスモデルを一定のパターンの組合せとして表現できたほうが望ましい。
このため本実施形態では、図2に示すようなアクティビティブロック100を定義する。このアクティビティブロック100は、1個のアクティビティノードai(101)がリンク元及びリンク先にORジャンクション102,103を1個ずつもち、さらにそれぞれのORジャンクション102,103がそのリンク元またはリンク先にANDジャンクション104,105を1個以上もった構造をなしている。
そして図3に示すように、複数のアクティビティブロック110,120,130,140,150を、ORジャンクション(201〜207)1個を介して互いに接続(リンク)したものとして業務プロセスモデルを扱い、その構造の推定及び提示を行う。ただし任意のアクティビティモデルaiとアクティビティモデルai'について、アクティビティモデルaiのアクティビティブロックをリンク元にもち、且つアクティビティモデルai'のアクティビティブロックをリンク先にもつORジャンクションは、業務プロセスモデル中に最大1個のみ存在するものとする。また、ORジャンクションとANDジャンクションの各組について、その間のリンクは最大1個であるとする。尚、以降の説明では、上記構成によって表現された業務プロセスモデルをブロック化業務プロセスモデルと称する。
図3において、アクティビティブロック110は、1個のアクティビティノードa1(111)と、2個のORジャンクション112,113、3個のANDジャンクション114〜116によって構成され、アクティビティノードa1(111)の入力側はORジャンクション112を介してANDジャンクション114の出力側に接続され、ANDジャンクション114の入力側は開始ノード101に接続されている。また、アクティビティノードa1(111)の出力側はORジャンクション113を介してANDジャンクション115,116のそれぞれの入力側に接続されている。
アクティビティブロック120は、1個のアクティビティノードa2(121)と、2個のORジャンクション122,123、5個のANDジャンクション124〜128によって構成され、アクティビティノードa2(121)の入力側はORジャンクション122を介してANDジャンクション124〜126のそれぞれの出力側に接続され、ANDジャンクション124の入力側は開始ノード101に接続されている。また、アクティビティノードa2(121)の出力側はORジャンクション123を介してANDジャンクション127,128のそれぞれの入力側に接続されている。また、ANDジャンクション128の出力側はORジャンクション205を介してANDジャンクション126の入力側に接続されている。
アクティビティブロック130は、1個のアクティビティノードa3(131)と、2個のORジャンクション132,133、2個のANDジャンクション134,135によって構成され、アクティビティノードa3(131)の入力側はORジャンクション132を介してANDジャンクション134の出力側に接続され、ANDジャンクション134の入力側はORジャンクション201を介してアクティビティブロック110のANDジャンクション115,116のそれぞれの出力側に接続されている。また、アクティビティノードa3(131)の出力側はORジャンクション133を介してANDジャンクション135の入力側に接続されている。
アクティビティブロック140は、1個のアクティビティノードa4(141)と、2個のORジャンクション142,143、4個のANDジャンクション144〜147によって構成され、アクティビティノードa4(141)の入力側はORジャンクション142を介してANDジャンクション144,145のそれぞれの出力側に接続され、ANDジャンクション144の入力側はORジャンクション202を介してアクティビティブロック110のANDジャンクション116の出力側に接続され、ANDジャンクション145の入力側はORジャンクション204を介してアクティビティブロック120のANDジャンクション127の出力側に接続されている。また、アクティビティノードa4(141)の出力側はORジャンクション143を介してANDジャンクション146,147のそれぞれの入力側に接続されている。また、ANDジャンクション147の出力側はORジャンクション207を介してアクティビティブロック120のANDジャンクション145の入力側に接続されている。
アクティビティブロック150は、1個のアクティビティノードa5(151)と、2個のORジャンクション152,153、4個のANDジャンクション154〜157によって構成され、アクティビティノードa5(151)の入力側はORジャンクション152を介してANDジャンクション154〜156のそれぞれの出力側に接続され、ANDジャンクション154,155の入力側はORジャンクション203を介してアクティビティブロック130のANDジャンクション135の出力側に接続され、ANDジャンクション155,156の入力側はORジャンクション206を介してアクティビティブロック140のANDジャンクション146の出力側に接続されている。また、アクティビティノードa5(151)の出力側はORジャンクション153を介してANDジャンクション157の入力側に接続されている。また、ANDジャンクション157の出力側は終了ノード102に接続されている。
上記のように、1つのアクティビティノードai(101)を持つアクティビティブロック100を考え、アクティビティブロック100は、1個のアクティビティノードai(101)がリンク元及びリンク先にORジャンクション102,103を1個ずつもち、さらにそれぞれのORジャンクション102,103がそのリンク元またはリンク先にANDジャンクション104,105を1個以上もった構造をなしていると定義することにより、業務プロセスモデルを一定のパターンの組合せとして表現することができる。
さらに本実施形態では、常に成立する条件、すなわち与えられた履歴をすべて出力するために業務プロセスモデルが満たさなければならない条件によって探索範囲を絞り込む。また、処理の実行順序情報に加えて、履歴中に含まれる処理の実行者に関する情報や、業務分析者が分析対象の業務プロセスモデルの構造についてあらかじめ知っている知識の情報、すなわち同一実行者は同じ案件に対して並列処理を行わないことを仮定できるか否か、実行者が異なる処理間での遷移は実行者が同じ処理間での遷移よりも起こりにくいことを仮定できるか否か、各アクティビティモデル間のリンクが存在する可能性は他に比べてどのくらい低いか、という業務プロセスモデルにおける処理の進め方に関する知識の情報を制約条件として追加し、さらに解の候補を絞り込む。また、業務プロセスモデルが持っている傾向を評価関数として表現し、特定の特徴を持った業務プロセスモデルを結果として得やすくする。これらの制約条件を満たし、評価関数を最適化する業務プロセスモデルの構造の探索は、制約条件や評価関数を数式として記述し、整数計画問題に帰着することで実現する。
以下では業務プロセスモデルと履歴の関係を明確にし、制約条件と評価関数について説明する。その後、変数を定義して、制約条件および評価関数をその変数を用いて表現することにより整数計画問題として表現する方法、および整数計画問題を解いて得られる数値的な解からブロック化業務プロセスモデルを得る方法を説明する。なお、整数計画問題の求解には既存の適切なアルゴリズムを使用する。
[業務プロセスモデルと履歴の関係]
まず、制約条件、評価関数の詳細な説明をするために、業務プロセスモデルと履歴の関係を図4を参照して説明する。
アクティビティモデル及び業務プロセスモデルは、複数の案件に対する処理と、処理の進め方をまとめて表したものである。それに対し、個々の案件に対する処理と、処理の進め方を表したものを各々アクティビティインスタンス、業務プロセスインスタンスとする。
アクティビティインスタンスはアクティビティモデルの実行それぞれを表すものであり、同じ案件に対する同じアクティビティモデルの実行であっても毎回異なるアクティビティインスタンスと考える。
業務プロセスインスタンスは、同じ案件に関係するアクティビティインスタンスとその間の遷移関係であり、1個の業務プロセスモデルに対して案件の数に対応して複数存在する。
また、アクティビティインスタンスの実行時に残される情報をアクティビティトレース、同じ案件に関するアクティビティトレースを時系列に従って1次元に並べたものを業務プロセストレース、複数の案件に関する業務プロセストレースの集合を履歴とする。ただしアクティビティトレースはアクティビティインスタンスの実行時に1回出力されるものとする。この仮定は本発明の適用対象を制限するものではなく、単に履歴から推定される業務プロセスモデルにおけるアクティビティモデルの粒度がアクティビティトレースによって決まることを意味するだけである。つまり、例えば「会議」という処理が実行される際に、「会議」の開始時と終了時にそれぞれ「会議開始」、「会議終了」という情報が残される場合が考えられるが、その場合には履歴から推定される業務プロセスモデルにおいては「会議」ではなく「会議開始」、「会議終了」がアクティビティモデルとなる。
尚、これ以降の説明では、案件やインスタンス、トレースを以下のように表記する。
・案件の集合をO、案件の数を|O|で表す。各条件に対しては、任意の方法で1から|O|までの番号を一意に付与し、w番目の案件を。Owで表す。
・案件Owに関する業務プロセスインスタンスをBw、Bwに含まれるアクティビティインスタンスの個数を |Bw|で表す。アクティビティインスタンスに対しては、実行された順に1から|Bw|までの番号を一意に付与し、j番目に実行されたアクティビティインスタンスをbw jで表す。
・案件Owに関する業務プロセストレースをCw、Cwに含まれるアクティビティトレースの個数を|Cw|で表す。アクティビティトレースに対しては、出現する順に1から|Cw|までの番号を一意に付与し、j番目に出現するアクティビティトレースをcw jで表す。
また、アクティビティインスタンスbw jがAの何番目のアクティビティモデルのインスタンスであるかをi(w,j)によって表す。つまりアクティビティトレースcw jのアクティビティインスタンスはbw jであり、アクティビティインスタンスbw jのアクティビティモデルはai(w,j)である。さらにアクティビティインスタンスbw jの実行後、業務プロセスモデル上でアクティビティモデルai(w,j)の出力リンクをたどり、他のアクティビティノードを経由せずにアクティビティモデルai(w,j)に到達し、アクティビティインスタンスbw jが実行される場合、「アクティビティインスタンスbw jはアクティビティインスタンスbw j'の遷移元である」、「アクティビティインスタンスbw j'はアクティビティインスタンスbw jの遷移先である」と定義する。
図4において、300は業務プロセスモデルAであり、開始ノード301と、アクティビティモデルa1(311),a2(312),a3(313),a4(314),a5(315),a6(316)、ANDジャンクション321,322、ORジャンクション331〜334によって表されている。
開始ノード301はアクティビティモデルa1(311)の入力側に接続され、アクティビティモデルa1(311)の出力側はANDジャンクション321を介してアクティビティモデルa2(312)の入力側に接続されると共にANDジャンクション321の出力側からORジャンクション331を介してアクティビティモデルa5(315)の入力側に接続されている。さらに、アクティビティモデルa5(315)の出力側はORジャンクション334を介してANDジャンクション322の入力側に接続されると共にORジャンクション334の出力側からORジャンクション331の入力側に接続されている。
アクティビティモデルa2(312)の出力側はORジャンクション332を介してアクティビティモデルa3(313)とアクティビティモデルa4(314)のそれぞれの入力側に接続されている。アクティビティモデルa3(313)とアクティビティモデルa4(314)の出力側はORジャンクション333を介してANDジャンクション322の入力側に接続されている。ANDジャンクション322の出力側はアクティビティモデルa6(316)の入力側に接続され、アクティビティモデルa6(316)の出力側は終了ノード302に接続されている。
この業務プロセスモデルA(300)では、例えばアクティビティモデルa1(311)はアクティビティモデルa2(312)とアクティビティモデルa5(315)のリンク先となる。また、アクティビティモデルa2(312)とアクティビティモデルa5(315)はアクティビティモデルa1(311)のリンク元となる。
また、図4における400は業務プロセスモデルA(300)のw番目の業務プロセスインスタンスBwである。ここで、bw jは業務プロセスインスタンスBwでj番目に開始されたアクティビティインスタンスであり、アクティビティインスタンスbw 1にはアクティビティモデルa1が対応し、アクティビティインスタンスbw 2にはアクティビティモデルa2が対応し、アクティビティインスタンスbw 3にはアクティビティモデルa5が対応している。さらに、アクティビティインスタンスbw 4にはアクティビティモデルa3が対応し、アクティビティインスタンスbw 5にはアクティビティモデルa5が対応し、アクティビティインスタンスbw 6にはアクティビティモデルa6が対応している。
この業務プロセスインスタンスBw(400)では、アクティビティインスタンスbw 1(401)はアクティビティインスタンスbw 2(402)とアクティビティインスタンスbw 3(403)に遷移し、アクティビティインスタンスbw 2(402)はアクティビティインスタンスbw 4(404)に遷移し、アクティビティインスタンスbw 3(403)はアクティビティインスタンスbw 5(405)に遷移する。さらに、アクティビティインスタンスbw 4(404)とアクティビティインスタンスbw 5(405)はアクティビティインスタンスbw 6(406)に遷移する。
ここで、例えば、アクティビティインスタンスbw 1(401)はアクティビティインスタンスbw 2(402)とアクティビティインスタンスbw 3(403)の遷移元であり、アクティビティインスタンスbw 2(402)とアクティビティインスタンスbw 3(403)はアクティビティインスタンスbw 1(401)の遷移先である。
また、図4における500は業務プロセスインスタンスBwの業務プロセストレースCwである。ここで、Cw jはアクティビティインスタンスbw jのアクティビティトレースである。アクティビティトレースCw 1はアクティビティモデルa1を実行することを表し、アクティビティトレースCw 2はアクティビティモデルa2を実行することを表し、アクティビティトレースCw 3はアクティビティモデルa5を実行することを表し、アクティビティトレースCw 4はアクティビティモデルa3を実行することを表し、アクティビティトレースCw 5はアクティビティモデルa5を実行することを表し、アクティビティトレースCw 6はアクティビティモデルa6を実行することを表している。
[制約条件]
与えられた履歴をすべて出力するために業務プロセスのモデルとインスタンスが満たさなければならない条件は、同じ業務プロセスインスタンスに含まれるアクティビティインスタンス間の関係、および業務プロセスのモデルとインスタンス間の関係から抽出される。アクティビティインスタンスbw jが業務プロセスインスタンスBwにおいてj番目に実行されるためには、アクティビティインスタンスbw jの遷移元と遷移先に関して以下の制約条件を満たす必要がある。
・アクティビティインスタンスbw jの遷移元に関する条件
w 1f(j):業務プロセスインスタンスBwに含まれるアクティビティインスタンスのうち、アクティビティインスタンスbw jの実行前に既に実行されているアクティビティインスタンスbw 1,...,bw j-1はアクティビティインスタンスbw jへ遷移可能なアクティビティインスタンスである。
w 2f(j):業務プロセスインスタンスBwに含まれるアクティビティインスタンスのうち、アクティビティインスタンスbw jの実行前にまだ実行されていないアクティビティインスタンスbw j,...,bw |Bw|はアクティビティインスタンスbw jの遷移元にはなり得ない。
w 3f(j):1<j≦|Bw|の場合、アクティビティインスタンスbw jへ遷移可能なアクティビティインスタンスのうち少なくとも1個がアクティビティインスタンスbw jの遷移元である。
w 4f(j):アクティビティモデルが同じである複数のアクティビティインスタンスのうち、アクティビティインスタンスbw jの遷移元は最大1個ある。
w 5f(j):アクティビティインスタンスbw j'がアクティビティインスタンスbw jの遷移元であるならば、アクティビティモデルai(w,j')はアクティビティモデルai(w,j)のリンク元である。
・アクティビティインスタンスbw jの遷移先に関する条件
w 1b(j):業務プロセスインスタンスBwに含まれるアクティビティインスタンスのうち、アクティビティインスタンスbw jの実行後にまだ実行されていないアクティビティインスタンスbw j+1,...,bw |Bw|はアクティビティインスタンスbw jから遷移可能なアクティビティインスタンスである。
w 2b(j):業務プロセスインスタンスBwに含まれるアクティビティインスタンスのうち、畔の実行後に既に実行されているアクティビティインスタンスbw 1,...,bw jはアクティビティインスタンスbw jの遷移先にはなり得ない。
w 3b(j):1≦j<|Bw|の場合、アクティビティインスタンスbw jから遷移可能なアクティビティインスタンスのうち少なくとも1個がアクティビティインスタンスbw jの遷移先である。
w 4b(j):アクティビティモデルが同じである複数のアクティビティインスタンスのうち、アクティビティインスタンスbwjの遷移先は最大1個ある。
w 5b(j):アクティビティインスタンスbw j'がアクティビティインスタンスbw jの遷移先であるならば、アクティビティモデルai(w,j')はアクティビティモデルai(w,j)のリンク先である。
これらの条件は、履歴中に含まれるすべての案件Owとそれに関連するアクティビティインスタンスbw jに対して成立する必要がある。尚、これ以降の説明では、
Figure 2006338274
とする。
また、履歴からアクティビティインスタンスの実行者がわかり、且つ同一の実行者は同じ案件に対して並列処理を行わないことを業務分析者の持つ事前知識の情報から仮定できる場合には、以下の条件を満たす必要がある。
s:同一実行者が実行したアクティビティインスタンス間での遷移は直前、直後に限られる。
与えられた履歴をすべて出力するために業務プロセスのモデルとインスタンスが満たさなければならない条件に加えてこの条件を加えることで、「同一の実行者は同じ案件に対して並列処理を行わない」という仮定が正しい場合には真の現状の業務プロセスモデルを解の候補に含めたまま、解の候補をより絞り込むことができ、推定精度の向上が図られる。
以上の制約条件のうち、rw 2f(j),rw 3f(j),rw 4f(j),sの一例を図5に示す。図5において、yw j,j'は整数変数で、アクティビティインスタンスbw jがアクティビティインスタンスbw j'の遷移元アクティビティインスタンスである場合1、そうでない場合0をとる整数変数である。
図5に示す例では、アクティビティインスタンスbw 1〜bw 10までが順に実行されることを表し、アクティビティインスタンスbw 1〜bw 10のそれぞれに対応するアクティビティモデルは順にa1,a2,a3,a4,a3,a5,a4,a5,a6,a5である。また、アクティビティインスタンスbw 1,bw 3,bw 4,bw 5,bw 7は実行者1によって実行され、アクティビティインスタンスbw 2,bw 6,bw 8,bw 10は実行者2によって実行され、アクティビティインスタンスbw 9は実行者3によって実行されることを表している。
また、図5に示す例では、制約条件rw 2f(7)によって、アクティビティインスタンスbw 8,bw 9,bw 10からアクティビティインスタンスbw 7へ遷移することはないことを表し、制約条件rw 3f(7)によって、アクティビティインスタンスbw 1〜bw 6のうちの最低どれか1個からアクティビティインスタンスbw 7に遷移することを表している。さらに、制約条件rw 4f(7)によって、アクティビティインスタンスbw 3,bw 5の両方からアクティビティインスタンスbw 7に遷移することはないことを表し、制約条件sによって、アクティビティインスタンスbw 1,bw 3,bw 4からアクティビティインスタンスbw 7に遷移することはないことを表している。
[評価関数]
一般には上記の制約条件を満たす業務プロセスモデルは複数存在し、それらをすべて列挙することは計算量の点から困難である。従って本実施形態では、以下に示すような推定結果が持つべき望ましい傾向を評価関数として与え、評価関数を最適にする解を求めることで最終的に1個の解を得る。
即ち、推定すべき業務プロセスモデルに対する情報が全くない場合には、例えばすべてのアクティビティモデル間にリンク関係がある業務プロセスモデルは、どのような履歴に対しても解の候補となり、現状の業務プロセスモデルの特徴を表していない。業務の特徴を把握するという目的からすると、必ずしも真の現状の業務プロセスモデルではないとしても、与えられた履歴を出力可能な、できる限り無駄なリンク関係を含まない業務プロセスモデルが望ましい。従って無駄なリンクや遷移が少ないほど良い評価を与えるようにする。
また、履歴から処理の実行者がわかり、且つ実行者が同じ処理間での遷移は実行者が異なる処理間での遷移より起こりやすいと考えられる場合には、実行者が異なるリンクと遷移が少ないほど良い評価を与えるようにする。
さらに、業務システム構築時に想定された業務プロセスモデルが利用可能であり、且つ現状の業務が大筋では想定された業務プロセスモデルに従っていることが予想できる場合等、どのアクティビティモデル間にリンクが存在する可能性が低いかが予想できる場合には、存在する可能性の低いリンクが少ないほど良い評価を与えるようにする。
[整数計画問題としての記述]
業務実行履歴からの現状の業務プロセスモデルの構造を自動的に推定できるようにするため、上記の制約条件を満たし、評価関数を最適化する業務プロセスモデルを求める手順を計算機(コンピュータ装置)によって機械的に実現できるように具体化する。
業務プロセスインスタンスBwにおいて、jstart番目からjend番目までのアクティビティインスタンスの集合をBw(jstart,jend)とする。また集合Bw(jstart,jend)において、アクティビティモデルaiのインスタンスの集合を集合 w i(jstart,jend)とする。つまり次式で定義される。
Figure 2006338274
ただし集合Bw(1,|Bw|)を単にBw、集合 w i(1,|Bw|)を単に集合 w iと表記することもある。さらにアクティビティインスタンスbw jへ遷移可能なアクティビティインスタンスの集合と遷移不可能なアクティビティインスタンスの集合をそれぞれ集合Uw f(j),集合 w f(j)とし、アクティビティインスタンスbw jから遷移可能、不可能なアクティビティインスタンスの集合をそれぞれ集合Uw b(j),集合 w b(j)とする。集合 w f(j),集合 w b(j)は集合Uw f(j),集合Uw b(j)を用いて以下のように表される。
Figure 2006338274
尚、これ以降の説明では任意の集合Ωについて、その集合に含まれる要素数を|Ω|のように表す。
ここで業務プロセスモデルにおけるリンク関係を数学的に扱うため、アクティビティモデルaiとアクティビティモデルai'のリンク関係を、アクティビティモデルaiがアクティビティモデルai'のリンク元アクティビティモデルである場合1、そうでない場合0をとる整数変数xi,i'で表す。また業務プロセスインスタンスBwにおける遷移関係を数学的に扱うため、アクティビティインスタンスbw jとアクティビティインスタンスbw j'の遷移を、アクティビティインスタンスbw jがアクティビティインスタンスbw j'の遷移元アクティビティインスタンスである場合1、そうでない場合0をとる整数変数yw j,j'で表す。
まず制約条件について説明する。処理の実行順序以外の情報を考慮しない場合、整数変数xi,i',yw j,j'を使うと制約条件rw 1f(j),...,rw 5f(j),rw 1b(j),...,rw 5b(j)は以下のように表される。
Figure 2006338274
履歴からアクティビティインスタンスの実行者がわかり、且つ同一の実行者は同じ案件に対して並列処理を行わないことを業務分析者の持つ事前知識の情報から仮定できる場合には、任意の方法で実行者に一意の番号を割り振り、k番目の実行者をpkと表記する。アクティビティインスタンスbw jの実行者の番号をk(w,j)によって表す。つまりアクティビティインスタンスbw jの実行者はpk(w,j)である。また、集合Bw(jstart,jend)において、実行者がpkであるアクティビティインスタンスの集合を集合 w(k)(jstart,jend)とする。つまり次式で定義される。
Figure 2006338274
このとき、
Figure 2006338274
である。制約条件rw 2f(j),...,rw 5f(j),rw 2b(j),...,rw 5b(j)は処理の実行順序以外の情報を考慮しない場合において、上記集合Uw f(j),集合Uw b(j)を使ったものになる。
次に評価関数について説明する。処理の実行順序以外の情報を考慮しない場合、無駄なリンクや遷移が少ないほど良い評価を与えるためには、以下の評価関数の最小化を考えればよい。
Figure 2006338274
履歴からアクティビティインスタンスの実行者がわかり、且つ実行者が異なるアクティビティのモデル間、インスタンス間での遷移は実行者が同じアクティビティのモデル間、インスタンス間での遷移よりも起こりにくいことを業務分析者の持つ事前知識の情報から仮定できる場合には、
μi,i'=1 … aiの実行者とai'の実行者が同じ場合
μi,i'>1 … aiの実行者とai'の実行者が異なる場合
νw j,j'=1 … bw jの実行者とbw j'の実行者が同じ場合
νw j,j'>1 … bw jの実行者とbw j'の実行者が異なる場合
として、以下の評価関数の最小化を考える。
Figure 2006338274
さらに業務システム構築時に想定された業務プロセスモデルが利用可能であり、且つ現状の業務が大筋では想定された業務プロセスモデルに従っていることを予想できる場合等、どのアクティビティモデル間にリンクが存在する可能性が低いかが予想できる場合には、存在する可能性がより低いリンクや遷移に対して上式のμi,i',νw j,j'に大きな値を設定した評価関数を用いる。
以上で説明したように、任意のw,jに対する制約条件rw 2f(j),...,rw 5f(j),rw 2b(j),...,rw 5b(j)と評価関数は整数変数xi,i',yw j,j'の線形式として表現されるので、整数計画問題を解くことにより整数変数xi,i'とyw j,j'の値を求めることができる。
ただし同時に求める変数の数が多いと、整数計画問題を解くのに時間がかかる。そこで本実施形態では上記制約条件と評価関数を変形することでまず整数変数xi,i'の値を求め、その結果に基づき、もとの制約条件の下で各w毎に整数変数yw j,j'の値を求める。
まず整数変数xi,i'はrw 1f∧rw 1bあるいはrw 1f∧rw 1b∧sのもとで、rw 2f∧rw 4b∧rw 5fの必要条件であるrw 6f(j)と、rw 2b∧rw 4f∧rw 5bの必要条件であるrw 6b(j)を満たさなければならない。
Figure 2006338274
なお、Φw f,i(j)は、2,...,jに含まれるai(w,j)のアクティビティインスタンスへ遷移可能であり且つアクティビティモデルがaiであるアクティビティインスタンスの集合であり、Φw b,i(j)は、j,...,|Bw|−1に含まるai(w,j)のアクティビティインスタンスから遷移可能であり且つアクティビティモデルがaiであるアクティビティインスタンスの集合であり、それぞれ次式で定義される。
Figure 2006338274
また、整数変数xi,i'のみに関する評価関数としては、以下の関数の最小化を考える。
Figure 2006338274
制約条件及び評価関数は整数変数xi,i'のみの線形式として表現されるので、整数計画問題を解くことにより整数変数xi,i'の値を求めることができる。
次に任意のw,jに対して、整数変数yw j,j'はrw 1f(j)∧rw 1b(j)あるいはrw 1f(j)∧rw 1b(j)∧sのもとでrw 2f(j),...,rw 5f(j),rw 2b(j),...,rw 5b(j)を満たさなければならない。wごとに以下の評価関数の最小化を考えれば、wごとに別々に整数計画問題を解くことで整数変数yw j,j'を求めることができる。
Figure 2006338274
次に、制約条件・評価関数導出部4及び整数計画問題ソルバ5が、履歴から制約条件と評価関数を立式し整数変数xi,i'とyw j,j'を求める手順を図6のフローチャートを参照して説明する。なお図6中の「事前知識」とは、同一実行者は同じ案件に対して並列処理を行わないことを仮定できるか否か、実行者が異なる処理間での遷移は実行者が同じ処理間での遷移よりも起こりにくいことを仮定できるか否か、各アクティビティモデル間のリンクが存在する可能性は他に比べてどのくらい低いか、という情報のことである。
推定装置1が処理を開始すると(1001)、制約条件・評価関数導出部4により、事前知識設定部3に記憶されている事前知識の情報を読み込む(1002)。さらに、履歴データベース2から履歴を読み込み、各案件owごとに、実行された順にアクティビティインスタンスを並べたリスト(業務プロセスインスタンス)Bwを作成し(1003)、変数wの値を1に設定(1004)した後、変数wの値が案件の数|O|以下であるか否かを判定する(1005)。この判定の結果、変数wの値が案件の数|O|以下でないときは後述する1010の処理に移行し、変数wの値が案件の数|O|以下であるときは変数jの値を1に設定し(1006)、変数jの値が業務プロセスインスタンスBwに含まれるアクティビティインスタンスの個数|Bw|以下であるか否かを判定する(1008)。この判定の結果、変数jの値が個数|Bw|以下であるときは、業務プロセスインスタンスBwに基づいて、事前知識の情報を考慮してrw 1f∧rw 1bまたはrw 1f∧rw 1b∧sのもとで制約条件rw 6f(j),rw 6b(j)を立式し、整数計画問題ソルバに追加する(1008)。この後、変数jの値に1を加算して(1009)、前記1007の判定処理に移行する。
前記1007の判定処理の結果、変数jの値が個数|Bw|以下でないときは変数wの値に1を加算して(1010)、前記1005の判定処理移行する。
前記1005の判定処理の結果、変数wの値が案件の数|O|以下でないときは、事前知識の情報を考慮して評価関数fを立式し、整数計画問題ソルバに最小化対象の評価関数として追加する(1011)。この後、整数計画問題ソルバにより整数変数xi,i'の値を求め(1012)、変数wの値を1に設定する(1013)。
次に、変数wの値が案件の数|O|以下であるか否かを判定する(1014)。この判定の結果、変数wの値が案件の数|O|以下でないときは処理を終了する(1022)。また、変数wの値が案件の数|O|以下であるときは変数jの値を1に設定し(1015)、変数jの値が業務プロセスインスタンスBwに含まれるアクティビティインスタンスの個数|Bw|以下であるか否かを判定する(1016)。この判定の結果、変数jの値が個数|Bw|以下であるときは、業務プロセスインスタンスBwに基づいて、事前知識の情報を考慮してrw 1f(j)∧rw 1b(j)またはrw 1f(j)∧rw 1b(j)∧sのもとで制約条件rw 2f(j),rw 3f(j),rw 4f(j),rw 5f(j),rw 2b(j),rw 3b(j),rw 4b(j),rw 5b(j)を立式し、整数計画問題ソルバに追加する(1017)。この後、変数jの値に1を加算して(1018)、前記1016の判定処理に移行する。
前記1016の判定処理の結果、変数jの値が個数|Bw|以下でないときは、事前知識の情報を考慮して評価関数gwを立式し、整数計画問題ソルバに最小化対象の評価関数として追加する(1019)。この後、整数計画問題ソルバにより整数変数yw i,i'の値を求め(1020)、変数wの値に1を加算して(1021)、前記1014の判定処理に移行する。
[整数変数xi,i'とyw j,j'の値からブロック化業務プロセスモデルへの変換]
上記の処理により求まった整数変数xi,i'とyw j,j'の値からブロック化業務プロセスモデルを求めるには、まず開始ノードと終了ノードを作成する。また各iごとに、アクティビティノードaiとそのリンク元ORジャンクション、リンク先ジャンクションを作成し、リンク元ORジャンクションを始点とし且つアクティビティノードaiを終点とするリンクと、アクティビティノードaiを始点とし且つリンク先ORジャンクションを終点とするリンクで接続する。さらに整数変数xi,i'=1となる変数i,i’に対して、アクティビティブロックをアクティビティノードaiからアクティビティノードai'の向きに中継するORジャンクションを作成する。
次に、各wごと、各jごとに、遷移元アクティビティモデル集合Vw f(j)と遷移先アクティビティモデル集合Vw b(j)を求め、アクティビティノードai(w,j)の遷移元アクティビティモデル集合の集合Λf(i(w,j))、遷移先アクティビティモデルの集合の集合Λb(i(w,j))に追加する。なお、集合Vw f(j),Vw b(j)が空集合であっても集合Λf(i(w,j)),Λb(i(w,j))へは追加する。また集合Λf(i(w,j)),Λb(i(w,j))に、集合Vw f(j),Vw b(j)とアクティビティモデルの集合として同じ集合Vw' f(j'),Vw' b(j')が存在する場合には集合Vw f(j),Vw b(j)を追加しない。
Figure 2006338274
その後、各iごとに、集合Λf(i)の各要素Vに対して、アクティビティノードaiのリンク元のORジャンクションのリンク元にANDジャンクションを作成するとともに、集合Vが空集合でない場合には、集合Vに含まれる各ai'に対して、アクティビティノードai'からアクティビティノードaiの向きに中継するORジャンクションを始点とし且つ作成されたANDジャンクションを終点とするリンクを作成し、集合Vが空集合である場合には、開始ノードを始点とし且つ作成されたANDジャンクションを終点とするリンクを作成する。同様に集合Λb(i)の各要素Vに対して、アクティビティノードaiのリンク先のORジャンクションのリンク先にANDジャンクションを作成するとともに、集合Vが空集合でない場合には、集合Vに含まれる各ai'に対して、このANDジャンクションを始点とし且つアクティビティノードaiからアクティビティノードai'の向きに中継するORジャンクションを終点とするリンクを作成し、集合Vが空集合である場合には、作成されたANDジャンクションを始点とし且つ終了ノードを終点とするリンクを作成する。
次に、結果提示部6によって、整数変数xi,i'とyw j,j'の値からブロック化業務プロセスモデルを求める手順の一例を図7乃至図10に示すフローチャートを参照して説明する。尚、この手順は整数変数xi,i'とyw j,j'の値からブロック化業務プロセスモデルを求める一例であり、実現性を示すためのもので、本発明はこの手順によって限定されるものではない。
整数変数xi,i'とyw j,j'の値が求まると(2001)、結果提示部6は、開始ノードと終了ノードを作成し(2002)、変数iの値を1に設定し(2003)する。この後、変数iの値が業務プロセスモデルAに含まれるアクティビティモデルの個数|A|以下であるか否を判定する(2004)。この判定の結果、変数iの値が個数|A|以下でないときは後述する2014の処理に移行し、変数iの値が個数|A|以下であるときは、アクティビティノードaiと、アクティビティノードaiのリンク元ORジャンクション、アクティビティノードaiのリンク先ORジャンクションを作成する(2005)。
次に、アクティビティノードaiのリンク元ORジャンクションからアクティビティノードaiへのリンクを作成すると共に、アクティビティノードaiからアクティビティノードaiのリンク先ORジャンクションへのリンクを作成する(2006)。
この後、変数i’の値を1に設定し(2007)、変数i’の値が業務プロセスモデルAに含まれるアクティビティモデルの個数|A|以下であるか否を判定する(2008)。この判定の結果、変数i’の値が個数|A|以下でないときは後述する2013の処理に移行し、変数i’の値が個数|A|以下であるときは、整数変数xi,i'の値が1であるか否かを判定する(2009)。この判定の結果、整数変数xi,i'の値が1でないときはORジャンクション(2011)を介して後述する2012の処理に移行する。また、整数変数xi,i'の値が1であるときはアクティビティブロックをアクティビティノードaiからアクティビティノードai'の向きに中継するORジャンクションを作成し(2010)、ORジャンクション(2011)を介して後述する2012の処理に移行する。
処理2012では、変数i’の値に1を加算し(2012)、この後、前記2008の判定処理に移行する。
処理2013では、変数iの値に1を加算し(2013)、この後、前記2004の判定処理に移行する。
一方、前記2004の判定の結果、変数iの値が業務プロセスモデルAに含まれるアクティビティモデルの個数|A|以下でないときは、変数wの値を1に設定し(2014)、変数wの値が案件の数|O|以下であるか否かを判定する(2015)。この判定の結果、変数wの値が案件の数|O|以下でないときは後述する2029の処理に移行し、変数wの値が案件の数|O|以下であるときは変数jの値を1に設定し(2016)、変数jの値が業務プロセスインスタンスBwに含まれるアクティビティインスタンスの個数|Bw|以下であるか否かを判定する(2017)。この判定の結果、変数jの値が個数|Bw|以下でないときは後述する2028の処理に移行し、変数jの値が個数|Bw|以下であるときは、整数変数yj,j'の値に基づき、遷移元アクティビティモデルの集合Vw f(j)と遷移先アクティビティモデルの集合Vw b(j)を求める(2018)。
次に、ANDジャンクション2019を介して2種類の処理を平行して行う。一方の処理では、集合Vw f(j)が集合Λf(i(w,j))に含まれないか否かを判定し(2020)、集合Vw f(j)が集合Λf(i(w,j))に含まれるときはORジャンクション2022及びANDジャンクション2026を介して処理2027に移行し、集合Vw f(j)が集合Λf(i(w,j))に含まれないときは集合Vw f(j)を集合Λf(i(w,j))に追加(2021)した後、ORジャンクション2022及びANDジャンクション2026を介して処理2027に移行する。
他方の処理では、集合Vw b(j)が集合Λb(i(w,j))に含まれないか否かを判定し(2023)、集合Vw b(j)が集合Λb(i(w,j))に含まれるときはORジャンクション2025及びANDジャンクション2026を介して処理2027に移行し、集合Vw b(j)が集合Λb(i(w,j))に含まれないときは集合Vw b(j)を集合Λb(i(w,j))に追加(2024)した後、ORジャンクション2022及びANDジャンクション2026を介して処理2027に移行する。
処理2027では、変数jの値に1を加算して(2027)、前記2017の判定処理に移行する。
処理2028では、変数wの値に1を加算して(2028)、前記2015の判定処理に移行する。
処理2029では、変数iの値に1を加算する(2029)。この後、変数iの値が業務プロセスモデルAに含まれるアクティビティモデルの個数|A|以下であるか否を判定する(2030)。この判定の結果、変数iの値が個数|A|以下でないときは処理を終了する(2031)。また、変数iの値が個数|A|以下であるときは、ANDジャンクション2032を介して2種類の処理を平行して行う。
一方の処理では、図9に示すように、集合Λf(j)≠0であるか否かを判定し(2033)、この判定の結果、集合Λf(j)≠0でないときはANDジャンクション2043を介して前記2030の判定処理に移行し、集合Λf(j)≠0であるときは集合Λf(i)からアクティビティモデルaiの遷移元アクティビティモデルの集合Vを取り出す(2034)。
次いで、アクティビティモデルaiのリンク元ORジャンクションのリンク元にANDジャンクションを作成し、このANDジャンクションから上記リンク元ORジャンクションへリンクで接続する(2035)。
この後、集合V≠0であるか否かを判定し(2036)、集合V≠0であるときはORジャンクション2037を介して処理2038に移行し、集合Vから遷移元アクティビティモデルaiを取り出す(2038)。次に、アクティビティブロックをアクティビティモデルaiからアクティビティモデルai'の向きに中継するORジャンクションから、ANDジャンクションへリンクで接続する(2039)。
次に、集合V≠0であるか否かを判定し(2040)、集合V≠0であるときはORジャンクション2037を介して処理2038に移行し、集合V≠0でないときはORジャンクション2041を介して前記2033の判定処理に移行する。
また、前記2036の判定の結果、集合V≠0でないときは、開始ノードからANDジャンクションへリンクで接続する(2042)。この後、ORジャンクション2041を介して前記2033の判定処理に移行する。
他方の処理では、図10に示すように、集合Λb(j)≠0であるか否かを判定し(2044)、この判定の結果、集合Λb(j)≠0でないときはANDジャンクション2043を介して前記2030の判定処理に移行し、集合Λb(j)≠0であるときは集合Λb(i)からアクティビティモデルaiの遷移元アクティビティモデルの集合Vを取り出す(2045)。
次いで、アクティビティモデルaiのリンク先ORジャンクションのリンク先にANDジャンクションを作成し、このANDジャンクションから上記リンク先ORジャンクションへリンクで接続する(2046)。
この後、集合V≠0であるか否かを判定し(2047)、集合V≠0でないときは、ANDジャンクションから終了ノードへリンクで接続する(2048)。この後、ORジャンクション2053を介して前記2044の判定処理に移行する。
また、前記2047の判定の結果、集合V≠0であるときはORジャンクション2049を介して処理2050に移行し、集合Vから遷移先アクティビティモデルai'を取り出す(2050)。次に、ANDジャンクションからアクティビティブロックをアクティビティモデルaiからアクティビティモデルai'の向きに中継するORジャンクションへリンクで接続する(2051)。
次に、集合V≠0であるか否かを判定し(2052)、集合V≠0でないときはORジャンクション2053を介して前記2044の判定処理に移行し、集合V≠0であるときはORジャンクション2049を介して前記2050の処理に移行する。
前述したように本実施形態によれば、業務プロセスモデルを、アクティビティブロックを単位としたブロック化業務プロセスモデルにより表現することで、遷移元および遷移先のアクティビティモデルの組合せがどのような業務プロセスモデルであっても推定対象として扱えるようになる。また現状の業務プロセスモデルで可能なすべての実行パターンが履歴に含まれるか否かによらず、与えられた履歴をすべて出力可能である、という常に成立する条件によって解の候補を絞り込むことで、真の業務プロセスモデルあるいはそれに類似した業務プロセスモデルが推定結果となる可能性を高める。さらに処理の実行順序情報にあわせて、処理の実行者情報や、業務分析者が分析対象の業務プロセスモデルの構造についてあらかじめ知っている、同一実行者は同じ案件に対して並列処理を行わないことを仮定できるか否か、実行者が異なる処理間での遷移は実行者が同じ処理間での遷移よりも起こりにくいことを仮定できるか否か、各アクティビティモデル間のリンクが存在する可能性は他に比べてどのくらい低いか、という知識も利用した推定を行えるようにすることで、推定精度の向上を図ることができる。
これらにより現状の業務プロセスモデルの構造を履歴から高い精度で自動的に推定できるようになるため、業務分析者は業務改善活動において時間と労力をかけずに現状業務の概略を現場に赴く前に把握できるようになり、その後の現場での現状業務の把握や問題点の分析を従来に比べて効率的に行えるようになる。その結果、継続的な業務改善活動が可能となり、業務プロセスを最適な状態に保つことが容易になる。
尚、本実施形態は、本発明の一具体例を表すものであり、本発明が上記実施形態の構成のみに限定されないことは言うまでもないことである。
本発明の一実施形態における推定装置を示す構成図 本発明の一実施形態におけるアクティビティブロックを示す構成図 本発明の一実施形態におけるブロック化業務プロセスモデルの一例を示す図 本発明の一実施形態における業務プロセスモデルと履歴の関係を説明する図 本発明の一実施形態における遷移に関する制約条件を説明する図 本発明の一実施形態における履歴から制約条件と評価関数を立式して整数変数を求める手順を説明するフローチャート 本発明の一実施形態における整数変数の値からブロック化業務プロセスモデルを求める手順を説明するフローチャート 本発明の一実施形態における整数変数の値からブロック化業務プロセスモデルを求める手順を説明するフローチャート 本発明の一実施形態における整数変数の値からブロック化業務プロセスモデルを求める手順を説明するフローチャート 本発明の一実施形態における整数変数の値からブロック化業務プロセスモデルを求める手順を説明するフローチャート ノード定義を説明する図 αアルゴリズムにおける並列処理の表現方法を説明する図 αアルゴリズムにおいて履歴からアクティビティモデルの関係を決定する規則を説明する図 αアルゴリズムでは扱えない並列処理の構造を説明する図 αアルゴリズムでは扱えない業務プロセスモデルの構造を説明する図 αアルゴリズムでは扱えない業務プロセスモデルの構造を説明する図
符号の説明
1…業務プロセスモデルの構造推定装置、2…履歴データベース、3…事前知識設定部、4…制約条件・評価関数導出部、5…整数計画問題ソルバ、6…結果提示部、7…操作部、100,110,120,130,140,150…アクティビティブロック、102,103,112,113,122,123,132,133,142,143,152,153,201-207…ORジャンクション、104,105,114-116,124-128,134,135,144-147,154-157…ANDジャンクション、300…業務プロセスモデル、301…開始ノード、302…終了ノード、311-316…アクティビティモデル、321,322…ANDジャンクション、331-334…ORジャンクション、400…業務プロセスインスタンス、500…業務プロセストレース。

Claims (10)

  1. コンピュータ装置からなる業務システムによって所定案件に対して実行された業務における処理の履歴が記録されている履歴蓄積手段を備えた推定装置を用い、前記履歴蓄積手段に蓄積されている案件に対して前記業務システムによって実行される業務における処理の進め方を表した業務プロセスモデルの構造を前記推定装置によって推定して提示する業務プロセスモデルの構造推定方法であって、
    前記推定装置は、
    前記業務プロセスモデルにおける処理の進め方に関する制約条件と該業務プロセスモデルが持っている傾向を表す評価関数に関する情報を予め記憶し、
    前記履歴蓄積手段に記憶されている情報と前記制約条件及び評価関数に関する情報から、前記案件に対応する業務プロセスモデルが満たすべき制約条件と該業務プロセスモデルに対応する評価関数を立式し、
    前記立式した制約条件を満たし且つ前記立式した評価関数を最適化する数値的な解を求め、
    前記数値的な解を、個々の処理を単位としてブロック化された1つの業務プロセスモデルに変換して提示する
    ことを特徴とする業務プロセスモデルの構造推定方法。
  2. 前記推定装置は、予め定義されている所定の整数変数を用いて前記制約条件と前記評価関数を立式することにより整数計画問題となし、該整数計画問題を解いて得られる数値的な解を前記ブロック化された業務プロセスモデルに変換して提示する
    ことを特徴とする請求項1に記載の業務プロセスモデルの構造推定方法。
  3. 前記推定装置は、
    前記変数として、異なる2つの処理間におけるリンクの有無を表す第1整数変数と、2つの処理実行の間の遷移の有無を表す第2整数変数とを設定し、
    前記立式した制約条件及び評価関数を解いて前記第1整数変数の値を算出した後に、該第1整数変数の値に基づいて前記制約条件の下で解となる前記第2整数変数の値を算出し、これらの解を前記ブロック化された業務プロセスモデルに変換して提示する
    ことを特徴とする請求項2に記載の業務プロセスモデルの構造推定方法。
  4. 前記履歴蓄積手段に蓄積されている情報は、処理の実行順序情報に加えて、履歴中に含まれる処理の実行者に関する情報を含み、
    前記推定装置は、
    同一実行者が実行した処理間の遷移は、実行した処理の直前或いは直後に限られるという条件を制約条件として用いると共に、
    処理間における無駄なリンク及び無駄な遷移が少ない程良い評価を与え、実行者が異なる処理間でのリンク及び遷移が少ないほど良い評価を与え、存在する可能性が低いリンクが少ないほど良い評価を与える関数を評価関数として用い、
    前記数値的な解をブロック化された業務プロセスモデルに変換して提示する
    ことを特徴とする請求項1乃至請求項3の何れかに記載の業務プロセスモデルの構造推定方法。
  5. 前記推定装置は、
    1つの処理をブロックとなし、該1つの処理ブロックは、1つの処理ノードと、該処理ノードの入力側に出力側がリンクされた1つのORジャンクションと、前記処理ノードの出力側に入力側がリンクされた1つのORジャンクションと、前記入力側のORジャンクションの入力側に出力側がリンクされた1つ以上のANDジャンクションと、前記出力側のORジャンクションの出力側に入力側がリンクされた1つ以上のANDジャンクションとからなるものとして、前記ブロック化された業務プロセスモデルを1つ以上の処理ブロックによって表して提示する
    ことを特徴とする請求項1乃至請求項4の何れかに記載の業務プロセスモデルの構造推定方法。
  6. コンピュータ装置からなる業務システムによって所定案件に対して実行された業務における処理の履歴が記録されている履歴蓄積手段を備え、前記履歴蓄積手段に蓄積されている案件に対して前記業務システムによって実行される業務における処理の進め方を表した業務プロセスモデルの構造を推定して提示する業務プロセスモデルの構造推定装置であって、
    前記業務プロセスモデルにおける処理の進め方に関する制約条件と該業務プロセスモデルが持っている傾向を表す評価関数に関する情報が記憶されている事前知識設定部と、
    前記履歴蓄積手段と前記事前知識設定部に記憶されている情報から、前記案件に対応する業務プロセスモデルが満たすべき制約条件と該業務プロセスモデルに対応する評価関数を、整数計画問題ソルバが利用できる形式で立式する制約条件・評価関数導出部と、
    前記制約条件・評価関数導出部から与えられた制約条件を満たし且つ評価関数を最適化する数値的な解を求めて出力する前記整数計画問題ソルバと、
    前記整数計画問題ソルバが出力する数値的な解を、個々の処理を単位としてブロック化された1つの業務プロセスモデルに変換して提示する結果提示部とを備えている
    ことを特徴とする業務プロセスモデルの構造推定装置。
  7. 前記履歴蓄積手段に蓄積されている情報は、処理の実行順序情報に加えて、履歴中に含まれる処理の実行者に関する情報を含み、
    前記事前知識設定部には、前記制約条件に関する情報として、同一担当者は同じ案件に対して並列処理を行わないことを仮定できるか否かの情報、実行者が異なる処理間での遷移は実行者が同じ処理間での遷移よりも起こりにくいことを仮定できるか否かの情報、各処理間のリンクが存在する可能性に関する情報のうちの1種類以上の情報が記憶されている
    ことを特徴とする請求項6に記載の業務プロセスモデルの構造推定装置。
  8. 前記事前知識設定部には、前記制約条件に関する情報として、同一実行者が実行した処理間の遷移は、実行した処理の直前或いは直後に限られるという条件に関する情報が記憶されている
    ことを特徴とする請求項7に記載の業務プロセスモデルの構造推定装置。
  9. 前記事前知識設定部には、前記評価関数に関する情報として、処理間における無駄なリンク及び無駄な遷移が少ない程良い評価を与える関数に関する情報、実行者が異なる処理間でのリンク及び遷移が少ないほど良い評価を与える関数に関する情報、存在する可能性が低いリンクが少ないほど良い評価を与える関数に関する情報のうちの1つ以上の情報が記憶されている
    ことを特徴とする請求項6乃至請求項8の何れかに記載の業務プロセスモデルの構造推定装置。
  10. 前記ブロック化された業務プロセスモデルは、1つ以上の処理ブロックからなり、
    1つの処理ブロックは、1つの処理ノードと、該処理ノードの入力側に出力側がリンクされた1つのORジャンクションと、前記処理ノードの出力側に入力側がリンクされた1つのORジャンクションと、前記入力側のORジャンクションの入力側に出力側がリンクされた1つ以上のANDジャンクションと、前記出力側のORジャンクションの出力側に入力側がリンクされた1つ以上のANDジャンクションとからなる
    ことを特徴とする請求項6乃至請求項9の何れかに記載の業務プロセスモデルの構造推定装置。
JP2005161446A 2005-06-01 2005-06-01 業務プロセスモデルの構造推定方法及びその装置 Active JP4380596B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005161446A JP4380596B2 (ja) 2005-06-01 2005-06-01 業務プロセスモデルの構造推定方法及びその装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005161446A JP4380596B2 (ja) 2005-06-01 2005-06-01 業務プロセスモデルの構造推定方法及びその装置

Publications (2)

Publication Number Publication Date
JP2006338274A true JP2006338274A (ja) 2006-12-14
JP4380596B2 JP4380596B2 (ja) 2009-12-09

Family

ID=37558785

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005161446A Active JP4380596B2 (ja) 2005-06-01 2005-06-01 業務プロセスモデルの構造推定方法及びその装置

Country Status (1)

Country Link
JP (1) JP4380596B2 (ja)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008276394A (ja) * 2007-04-26 2008-11-13 Nippon Telegr & Teleph Corp <Ntt> プロセスモデル作成システム、方法及びそのプログラム
JP2009093620A (ja) * 2007-10-04 2009-04-30 Mitsubishi Electric Research Laboratories Inc ビジネスプロセスをモデリングするコンピュータ実施方法
JP2009245117A (ja) * 2008-03-31 2009-10-22 Nippon Telegr & Teleph Corp <Ntt> 業務プロセスモデル比較方法、その装置およびプログラム
JP2010020634A (ja) * 2008-07-11 2010-01-28 Fujitsu Ltd 業務フロー処理プログラム、方法及び装置
JP2010049565A (ja) * 2008-08-22 2010-03-04 Ntt Data Corp 業務フロー管理装置、業務フロー管理方法および業務フロー管理プログラム
JP2010250800A (ja) * 2009-02-02 2010-11-04 Nec (China) Co Ltd エンジンプロセスの構築方法および装置
JP2010271806A (ja) * 2009-05-20 2010-12-02 Fujitsu Ltd 業務フロー処理プログラム、方法及び装置
JP2011100238A (ja) * 2009-11-05 2011-05-19 Fujitsu Ltd 業務プロセス構造推定方法、プログラム及び装置
JP2013210230A (ja) * 2012-03-30 2013-10-10 Sony Corp データ処理装置、データ処理方法、及び、プログラム
WO2017013787A1 (ja) * 2015-07-23 2017-01-26 株式会社日立製作所 分析装置、分析方法、及び、分析プログラム
US10452986B2 (en) 2012-03-30 2019-10-22 Sony Corporation Data processing apparatus, data processing method, and program

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008276394A (ja) * 2007-04-26 2008-11-13 Nippon Telegr & Teleph Corp <Ntt> プロセスモデル作成システム、方法及びそのプログラム
JP2009093620A (ja) * 2007-10-04 2009-04-30 Mitsubishi Electric Research Laboratories Inc ビジネスプロセスをモデリングするコンピュータ実施方法
JP2009245117A (ja) * 2008-03-31 2009-10-22 Nippon Telegr & Teleph Corp <Ntt> 業務プロセスモデル比較方法、その装置およびプログラム
JP2010020634A (ja) * 2008-07-11 2010-01-28 Fujitsu Ltd 業務フロー処理プログラム、方法及び装置
JP2010049565A (ja) * 2008-08-22 2010-03-04 Ntt Data Corp 業務フロー管理装置、業務フロー管理方法および業務フロー管理プログラム
JP2010250800A (ja) * 2009-02-02 2010-11-04 Nec (China) Co Ltd エンジンプロセスの構築方法および装置
JP2010271806A (ja) * 2009-05-20 2010-12-02 Fujitsu Ltd 業務フロー処理プログラム、方法及び装置
JP2011100238A (ja) * 2009-11-05 2011-05-19 Fujitsu Ltd 業務プロセス構造推定方法、プログラム及び装置
JP2013210230A (ja) * 2012-03-30 2013-10-10 Sony Corp データ処理装置、データ処理方法、及び、プログラム
US10452986B2 (en) 2012-03-30 2019-10-22 Sony Corporation Data processing apparatus, data processing method, and program
WO2017013787A1 (ja) * 2015-07-23 2017-01-26 株式会社日立製作所 分析装置、分析方法、及び、分析プログラム

Also Published As

Publication number Publication date
JP4380596B2 (ja) 2009-12-09

Similar Documents

Publication Publication Date Title
JP4380596B2 (ja) 業務プロセスモデルの構造推定方法及びその装置
JP5471400B2 (ja) ジョブ分析プログラム及び方法、並びにジョブ分析装置
US8458117B2 (en) System and method for dependency and root cause discovery
Blazewicz et al. Metaheuristic approaches for the two-machine flow-shop problem with weighted late work criterion and common due date
JP2013045308A (ja) 工事進捗管理支援システム及び方法
US20150169379A1 (en) Information processing method, information processing device, and recording medium
Chan et al. Comparative performance analysis of a flexible manufacturing system (FMS): a review-period-based control
Chua et al. A surrogate model to predict production performance in digital twin-based smart manufacturing
Batyuk et al. Streaming process discovery method for semi-structured business processes
JP5255796B2 (ja) 運用管理サポートシステム、プログラム
US20180060787A1 (en) Information processing method, information processing device and client terminal
Schneider et al. Benefits of digitalization for business processes in semiconductor manufacturing
Effendi et al. Process discovery of business processes using temporal causal relation
JP2007079768A (ja) 人手作業を含む生産工程の効率化支援方法
KR101609292B1 (ko) 연구 개발 프로젝트 관리 장치 및 방법
Lakshmanan et al. Assessing the health of case-oriented semi-structured business processes
Guevara et al. Genetic algorithm for flexible job shop scheduling problem-A case study
Salhab et al. Schedule compression and emerging waste in construction: an assessment of overlapping activities
Huang et al. A cutting plane method for risk-constrained traveling salesman problem with random arc costs
Comuzzi Optimal paths in business processes: Framework and applications
KR101649913B1 (ko) 연구 개발 프로젝트 관리 장치 및 방법
WO2019056708A1 (zh) 电子装置、待释放人员推荐方法和计算机可读存储介质
Sathish et al. Scheduling of flow shop problems on 3 machines in fuzzy environment with double transport facility
Jadhav et al. A Survey on Software Data Reduction Techniques for Effective Bug Triage
JP2009122874A (ja) プロセスシミュレーションシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070809

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090512

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090713

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090911

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090914

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121002

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4380596

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131002

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350