JP2007025823A - シミュレーションプログラム、シミュレーション方法 - Google Patents
シミュレーションプログラム、シミュレーション方法 Download PDFInfo
- Publication number
- JP2007025823A JP2007025823A JP2005203689A JP2005203689A JP2007025823A JP 2007025823 A JP2007025823 A JP 2007025823A JP 2005203689 A JP2005203689 A JP 2005203689A JP 2005203689 A JP2005203689 A JP 2005203689A JP 2007025823 A JP2007025823 A JP 2007025823A
- Authority
- JP
- Japan
- Prior art keywords
- business
- simulation
- model
- simulation program
- activity
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 247
- 238000004088 simulation Methods 0.000 title claims abstract description 230
- 230000008569 process Effects 0.000 claims abstract description 197
- 230000000694 effects Effects 0.000 claims abstract description 111
- 230000007704 transition Effects 0.000 claims description 54
- 238000010586 diagram Methods 0.000 claims description 37
- 230000010365 information processing Effects 0.000 claims description 8
- 238000005094 computer simulation Methods 0.000 claims description 2
- 230000006872 improvement Effects 0.000 abstract description 19
- 238000005516 engineering process Methods 0.000 abstract description 3
- 238000007726 management method Methods 0.000 description 47
- 230000000875 corresponding effect Effects 0.000 description 19
- 238000009826 distribution Methods 0.000 description 18
- 230000006870 function Effects 0.000 description 17
- 230000008859 change Effects 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 10
- 238000007689 inspection Methods 0.000 description 6
- 230000003247 decreasing effect Effects 0.000 description 5
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000012447 hatching Effects 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 230000008685 targeting Effects 0.000 description 2
- 230000003442 weekly effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 238000007794 visualization technique Methods 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】 業務プロセスの改善の効果をシミュレーションによって精度良く評価することが可能な業務プロセスのシミュレーション技術を提供する。
【解決手段】 複数の業務システムを組み合わせて構成される業務フローのシミュレーションを行うシミュレーション装置30において、業務フローを定義する業務プロセスDB40と、業務システム20からイベントデータ81を収集する他のイベント管理装置10から複写された当該イベントデータ81を保持するイベント管理DB50と、イベント管理DB50に保持された実際のイベントデータ81と業務プロセスDB40に定義された業務フローとに基づいてシミュレーションを行うシミュレーションエンジン部33と、シミュレーション結果から統計値を算出して統計値DB60に格納する統計値計算部34と、統計値を比較表示する結果表示アプリケーション73を搭載した操作端末装置70を備えた。
【選択図】図1
【解決手段】 複数の業務システムを組み合わせて構成される業務フローのシミュレーションを行うシミュレーション装置30において、業務フローを定義する業務プロセスDB40と、業務システム20からイベントデータ81を収集する他のイベント管理装置10から複写された当該イベントデータ81を保持するイベント管理DB50と、イベント管理DB50に保持された実際のイベントデータ81と業務プロセスDB40に定義された業務フローとに基づいてシミュレーションを行うシミュレーションエンジン部33と、シミュレーション結果から統計値を算出して統計値DB60に格納する統計値計算部34と、統計値を比較表示する結果表示アプリケーション73を搭載した操作端末装置70を備えた。
【選択図】図1
Description
本発明は、シミュレーション技術に関し、特に、BPM(Business Process Management)における業務プロセスの改善検討作業等に適用して有効なシミュレーション技術に関する。
企業などで業務を行う場合、あらかじめ作成した流れ(業務モデルあるいは業務フロー)に沿って実行する場合が多い。業務モデルには業務の流れのほかに、業務内の個々の処理(アクティビティ)で要する作業時間や必要とする資源、コストなどを合わせて記述する。業務は業務モデルに従い、複数の業務システムの業務アプリケーションの連携で実行される。
現行業務モデルの作業の流れや作業時間などを変更し業務を改善する場合、稼働中の業務システムの変更に先立ち、改善方法が妥当であり期待した改善効果が得られるかを検証する必要がある。検証方法として業務モデルのシミュレーションが用いられることが多い。
複数の業務プロセスや業務システムを統合・制御・自動化し、業務フロー全体を最適化するための技術やツールとしてBPMが知られている。
従来の乱数を用いるシミュレーション方式では業務プロセス(業務モデル)を新規に作成する場合に主眼がおかれていた。すなわち、実行したい業務を業務プロセスとして記述し、業務(業務インスタンス)の発生する頻度や作業時間などのパラメタを設定し、それに基づき乱数で業務インスタンスを複数個発生させ業務モデルがどのような振る舞いをするかを検証するものである。
従来の乱数を用いるシミュレーション方式では業務プロセス(業務モデル)を新規に作成する場合に主眼がおかれていた。すなわち、実行したい業務を業務プロセスとして記述し、業務(業務インスタンス)の発生する頻度や作業時間などのパラメタを設定し、それに基づき乱数で業務インスタンスを複数個発生させ業務モデルがどのような振る舞いをするかを検証するものである。
一方、特許文献1に示す業務プロセスの可視化技術では業務の流れを業務プロセスとして図的に記述し、この業務プロセスに基づいて業務システムにおける業務の実行状況を「イベントデータ」として収集し、イベントデータ間を関係付け、業務インスタンスごとの進行状況を表示することで、業務プロセスを可視化している。
従来の業務モデルのシミュレーションでは次のような課題あるいは改善要求が考えられる。
第1に、既存の業務モデルを元に改善した業務モデルを評価する場合も、業務モデルの記述者が設定した各種パラメタに基づきシミュレーションを行うため、現行の業務モデルのパラメタが現状の業務を正しく反映していなければ、改善した業務モデルに基づくシミュレーション結果も正しい値とはならない。
第1に、既存の業務モデルを元に改善した業務モデルを評価する場合も、業務モデルの記述者が設定した各種パラメタに基づきシミュレーションを行うため、現行の業務モデルのパラメタが現状の業務を正しく反映していなければ、改善した業務モデルに基づくシミュレーション結果も正しい値とはならない。
現状の(As−is)モデルで業務が遂行されているのなら、それを観察することで、改善した(To−be)モデルにおける現状部分に関するパラメタの設定値を求め、シミュレーションのパラメタの設定作業を支援することが望まれる。
第2に、既存のシミュレーション方式は乱数を用いるため、乱数分布で表現できないような業務プロセスの発生分布には対応できない。
現状で業務が遂行されているなら、それを観察して現状と同等の業務インスタンスの発生分布とすることが望まれる。
現状で業務が遂行されているなら、それを観察して現状と同等の業務インスタンスの発生分布とすることが望まれる。
第3に、業務インスタンスの量を実際に発生した量より増やしてシミュレーションしたいとき、既存の履歴をそのまま使うのが困難である。業務インスタンスの量を増やしてシミュレーションする方法が望まれる。
第4に、業務インスタンスの量を実際に発生した量より減らしてシミュレーションしたいとき、既存の履歴をそのまま使うのが困難である。業務インスタンスの量を減らしてシミュレーションする方法が望まれる。
第5に、従来のシミュレーションではシミュレーション実行時にアニメーションで実行状況を表示する機能を持つものがあるが、シミュレーション結果は統計値として集計されるため、シミュレーション終了後に改めて業務インスタンスの振る舞いを詳細に追うことができない。業務インスタンスの振る舞いを詳細に観察できる方法が望まれる。
第6に、ある業務フローに対し、フローは変更せず、フロー内のアクティビティや遷移の振る舞い(定義パラメタ)を変更して最適な解を見つけたいとき、定義パラメタのみを変更して複数回シミュレーションすることが望まれる。
第7に、既存の業務で実行した履歴を用いてシミュレーションを行うタイプのシミュレーション方式では、乱数を用いるシミュレーション方式とは異なり、必ずしも業務フロー上の全てのアクティビティと遷移に対してパラメタを設定する必要がない。そのような場合、業務フローのどの部分にパラメタを設定したかを簡単に分かるようにし、設定する必要がある箇所に設定されているかを分かりやすくする技術が望まれる。
第8に、業務を変更する場合は複数の判断基準のトレードオフにより改善案を決定することが有効であるため、最適な業務フローやパラメタセットを得るためには値を変えて何回もシミュレーションを試行し、そのうち良さそうなシミュレーション結果を複数個選択し並列して比較することが望まれる。
第9に、既存の業務プロセスに関して業務フローのみ定義されているが、それに含まれるアクティビティのカレンダや作業時間帯(営業時間)は定義していないとき、既存の実行履歴を用いてシミュレーションを実行すると不正確な結果となる可能性がある。アクティビティごとにカレンダなどを設定するのは、業務フローの規模に応じて手間がかかる作業となる。既存の業務プロセスのカレンダや作業時間帯を別途定義しなくても、実行履歴からそれらを推定する機能が望まれる。
なお、特許文献2には、複数の作業者が関わるワークフロー業務を管理するワークフローシステムにおいて、ワークフロー業務の定義と、進捗状況と、個人情報に基づいて未来の進捗状況を予測することで、締め切り超過等のトラブルを事前に予知して業務の定義や優先度変更等の処置を可能にしようとする技術が開示されているが、BPMにおける上述の技術的課題は認識されていない。
特許文献3には、既設のエレベータの運転モードの改造作業において、実際の過去の運行データを収集して各種運転モードをシミュレーションし、現環境に最適な運行モードを選定して顧客に提示する技術が開示されているが、やはり、上述のようなBPMにおける技術的課題は認識されていない。
特開2005−115494号公報(特願2003−346271号公報)
特開平8−190584号公報
特開2002−68623号公報
本発明の目的は、業務プロセスの改善の効果をシミュレーションによって精度良く評価することが可能な業務プロセスのシミュレーション技術を提供することにある。
本発明の他の目的は、乱数分布で表現できない業務インスタンスの発生分布の場合でも業務プロセスの改善の効果をシミュレーションによって精度良く評価することが可能な業務プロセスのシミュレーション技術を提供することにある。
本発明の他の目的は、乱数分布で表現できない業務インスタンスの発生分布の場合でも業務プロセスの改善の効果をシミュレーションによって精度良く評価することが可能な業務プロセスのシミュレーション技術を提供することにある。
本発明の他の目的は、比較的限られた既存の履歴情報を用いて、業務インスタンスの多様な発生量の場合を精度良くシミュレーションすることが可能な業務プロセスのシミュレーション技術を提供することにある。
本発明の他の目的は、業務インスタンスの振る舞いを詳細に観察することが可能な業務プロセスのシミュレーション技術を提供することにある。
本発明の他の目的は、良好な操作性にて、多様な条件下でのシミュレーションを行うことが可能な業務プロセスのシミュレーション技術を提供することにある。
本発明の他の目的は、良好な操作性にて、多様な条件下でのシミュレーションを行うことが可能な業務プロセスのシミュレーション技術を提供することにある。
多くの業務改善では現行業務をまったく変更するのはまれであり、業務の一部のみを改良する場合が多い。そのためBPMシステムが保存する現行業務の実行結果を元に、業務を改善する部分の振る舞いだけを置き換えることで、改善後の業務モデルを精度良くシミュレートすることが可能である。
たとえば、既存のBPMシステムに備えられた、業務システムから業務インスタンスの振る舞いを示す情報(イベントデータ)を収集・蓄積する機能を用いると、次のようにイベントデータを変更することでシミュレーションが行える。
本発明では、業務モデルでアクティビティのパラメタが変更されておらず、かつそれに対応するイベントデータが存在する場合には、イベントデータはそのまま、またはそれ以前の実行に応じてアクティビティの実行時間は保ったままイベントデータの開始時刻および終了時刻をずらしてシミュレーションに利用する。
上記以外の場合には、改善業務モデルで設定したパラメタに基づき新たにイベントデータを作成する。
業務インスタンスの発生頻度や現行業務モデルに存在するアクティビティの作業時間などは改善業務モデルで変更したところ以外は現行業務システムの特性そのままであり、全てを乱数でシミュレーションするよりも、より正確な値が得られることが期待される。
業務インスタンスの発生頻度や現行業務モデルに存在するアクティビティの作業時間などは改善業務モデルで変更したところ以外は現行業務システムの特性そのままであり、全てを乱数でシミュレーションするよりも、より正確な値が得られることが期待される。
すなわち、本発明の第1の観点では、あらかじめ実際のイベントデータからアクティビティの実行時間などの統計値を計算しておく。シミュレーションのパラメタ設定時にユーザが特定のボタンを押すなどの操作の検出を契機として、パラメタ設定の所定の欄に統計値を埋め込む。また場合によってはデフォルト値としてあらかじめパラメタ設定の所定の欄に統計値を埋め込んだ状態で画面を表示する。
本発明の第2の観点では、例えば業務開始直後に注文が多く来るなど、業務プロセスインスタンスの発生の分布を典型的な乱数分布で近似するのが困難である場合、業務インスタンスの発生タイミングとして現行のイベントデータを用い、業務インスタンス発生後は従来の乱数でシミュレートすることで、乱数のみでは不正確になる可能性を低くする。
上述のように、実際の業務インスタンス(イベントデータ)を用いてシミュレーションを行う場合では改善後の業務インスタンスの発生頻度は現行業務インスタンスと同一となるが、例えば受注量が増加したなどで業務インスタンスが増加・減少する場合のシミュレーションができない。
そのため、本発明の第3および第4の観点では、実際の業務インスタンス(イベントデータ)を用いてシミュレーションを実行する際に設定する、シミュレーションの対象期間に含まれる業務インスタンスを増減する。
たとえば、業務インスタンスを増加させる場合は、対象期間とは別の期間から業務インスタンスを選択し、それに属するイベントデータの時刻情報をシミュレーション対象期間内の時刻となるよう一律にずらし、重畳して用いる。
また、業務インスタンスを減少させる場合は、対象期間内の業務インスタンスを減少させたい割合に応じて選択し、それらに対応するイベントデータを間引いてシミュレーションに用いない。
本発明の第5の観点では、シミュレーション実行時に計算した各アクティビティの情報をイベントデータとして出力し、たとえばBPMシステムの業務プロセストラッキング装置の入力とすることで、改善後の業務モデルの振る舞いを業務プロセストラッキング装置を用いて業務インスタンス単位で詳細に検討したり、または現行業務モデルと比較することが可能となる。
本発明の第6の観点では、一例として、シミュレーションの定義情報を(元のAs−isモデル、To−beモデル、パラメタセット)の組で表し、元のAs−isモデルに対し複数のTo−beモデルを対応付けることを可能とし、さらにTo−beモデルに対し複数のパラメタセットを対応付けることを可能とする。
本発明の第7の観点では、たとえば、画面に表示された業務フローのアクティビティまたは遷移をクリックするとパラメタ設定用画面が表示され、パラメタを設定または変更した場合は、業務フロー上の該当箇所で色を変えて表示するなどでパラメタが設定されたことが分かるようにする。
本発明の第8の観点では、シミュレーション結果の一覧と、それから複数個を選択する機能、選択したシミュレーション結果のみをまとめて表示する機能を設ける。シミュレーション結果の一覧では、シミュレーション実行時に付与した実行名、As−isモデル名、To−beモデル名、パラメタセット名、シミュレーション期間、シミュレーション実行日時、利用者が付与する備考などの情報を表示し、適切なシミュレーション結果を選択できるようにする。
本発明の第9の観点では、既存業務プロセスのアクティビティごとに、BPMが持つ履歴情報から実行された日付および実行時間を推定する。ただし履歴情報からの推定では実際に作業をしている時間帯は分からない。そのため、たとえばアクティビティの開始時刻ないし終了時刻を実際に作業が発生した時刻とみなし、時刻のヒストグラムを計算することで、作業が発生した日付と、作業時間帯を推定する。
上記した本発明によれば、従来技術のようにシミュレーション結果を統計値としてユーザに示すだけでなく、業務インスタンス単位の振る舞いを提示することで、ユーザがより詳細な検討を行える。
すなわち、従来はコンサルタントやSEが業務担当者にヒアリングしたり別途BPMなどの仕組みを用いて業務に関する振る舞いを調査した上で、シミュレーションのパラメタとして設定する必要があった。本発明の第1の観点では、BPMとシミュレーションが連動することで、ユーザが実績を参照したいときのみ、業務プロセストラッキング装置が持つイベントデータから計算した統計値を従来技術のシミュレーションの設定として用いることができ、従来よりも設定作業が容易になる。また場合によっては全てのパラメタに統計値をデフォルトとして設定しておくことで、利用者の設定の手間を軽減できる。
多くの業務ではプロセスインスタンスの生起は外部要因によって発生し単純な乱数分布に当てはめにくいため、シミュレーションの精度を高めるために時間を細かく区切ってそれぞれに乱数分布を設定するなどの方法で分布を近似する必要があった。本発明の第2の観点では、イベントデータから取得した、実際の業務で発生したプロセスインスタンスの生起タイミングを用いるので、利用者がプロセスインスタンスの生起確率を推定する必要がない。また実際に発生したタイミングを用いることで利用者が想定しないようなプロセスインスタンスの生起も再現してシミュレーションされる。
業務では24時間操業でない場合に作業時間と非作業時間が存在するため、実データ(実行履歴)を用いるシミュレーション方式において業務インスタンス数を増減してシミュレーションを行いたいとき、単純に時間軸を伸縮することで単位時間当たりの業務インスタンス数を増減することはできない。本発明の第3および第4の観点では、データを増やす場合にシミュレーション対象期間以外のデータを重畳するので、シミュレーション対象期間のデータと類似の特性を持つデータを選択すれば、シミュレーション対象期間と同様の特性で、増加したデータを用いシミュレーションすることが可能である。またデータを削減する場合もプロセスインスタンス単位で削減することで、シミュレーション対象期間が持つ特性を損なわずにシミュレーション可能である。
従来は業務フロー上で動作を見て検討したい場合に従来のシミュレーションが実装しているアニメーション機能を用いてシミュレーション中に観察するしかなかったが、本発明の第5の観点では何度でも、ほかのプロセスインスタンスも含めて観察することができる。
業務改善時に業務フローを変更するのは影響が大きく、同一業務フローに対してアクティビティや遷移の振る舞いを変えるのはより影響が小さいと考えられる。そのため業務改善を検討する場合もまず業務フロー案を検討・決定し、それからアクティビティや遷移の微調整を行うことができるのが望ましい。本発明の第6の観点では、定義を業務フローとパラメタセットに分離することで、ある業務フローに対し複数のパラメタセットを定義しシミュレーション結果を、たとえば第8の観点で開示される仕組みで、比較することができ、最適な定義を決定するのが容易になる。
本発明では、実際の業務インスタンスを用いるので、アクティビティや遷移部分に何も定義しない項目があってもシミュレーション可能である。そのため必ずしも全てのアクティビティと遷移部分にパラメタを定義したか否かで、パラメタの設定がすんだか否かを判断できない。本発明の第7の観点によれば、利用者がパラメタセットで従来と異なる振る舞いをさせたいときに、どこに設定したかを把握できると、利用者が設定忘れをしていないか確認しやすい。
従来のシミュレーションではあらかじめシミュレーション用パラメタをいくつか用意しておき、それらを連続してシミュレーションし、結果を一括して表示することは可能であったが、シミュレーション結果を見ながらさらにシミュレーションを行ったときに、それらの結果から必要な分を選択し、まとめて比較することができなかった。本発明の第8の観点では、複数のシミュレーション結果から有望な結果だけをいくつか選択し、それらを比較して最適な定義を決定するのが容易になる。
既存業務プロセスに関する作業時間やカレンダ情報がない場合、イベントデータから実行時間を求めるときに正確な実行時間を求めることができない。本発明の第9の観点では、利用者が既存業務プロセスの作業時間やカレンダを定義していなくても、イベントデータの分布から作業時間やカレンダを推定することで、利用者の設定の手間を軽減することができる。
本発明の目的は、業務プロセスの改善の効果をシミュレーションによって精度良く評価することが可能な業務プロセスのシミュレーション技術を提供することにある。
本発明によれば、乱数分布で表現できない業務インスタンスの発生分布の場合でも業務プロセスの改善の効果をシミュレーションによって精度良く評価することが可能な業務プロセスのシミュレーション技術を提供することができる。
本発明によれば、乱数分布で表現できない業務インスタンスの発生分布の場合でも業務プロセスの改善の効果をシミュレーションによって精度良く評価することが可能な業務プロセスのシミュレーション技術を提供することができる。
また、比較的限られた既存の履歴情報を用いて、業務インスタンスの多様な発生量の場合を精度良くシミュレーションすることが可能な業務プロセスのシミュレーション技術を提供することができる。
また、業務インスタンスの振る舞いを詳細に観察することが可能な業務プロセスのシミュレーション技術を提供することができる。
また、良好な操作性にて、多様な条件下でのシミュレーションを行うことが可能な業務プロセスのシミュレーション技術を提供することができる。
また、良好な操作性にて、多様な条件下でのシミュレーションを行うことが可能な業務プロセスのシミュレーション技術を提供することができる。
以下、図面を参照しながら、本発明の実施の形態について詳細に説明する。
図1は、本発明の一実施の形態であるシミュレーション方法を実施するBPMシステム等の情報処理システムの構成の一例を示すブロック図である。
図1は、本発明の一実施の形態であるシミュレーション方法を実施するBPMシステム等の情報処理システムの構成の一例を示すブロック図である。
本実施の形態の情報処理システムは、イベント管理装置10、複数の業務システム20、表示クライアント20b、シミュレーション装置30および操作端末装置70を含んでいる。
複数の業務システム20の各々は、後述の受注業務21、在庫確認業務22、出庫業務23、配送依頼業務24および配送業務25、発注業務26、検品業務27の各々からなり、個々の業務システム20は、これらの各業務を実現するための業務アプリケーション20aを備えている。業務アプリケーション20aは、職掌する当該業務の遂行において発生する後述のイベントデータ81をイベント管理装置10に出力する。
イベント管理装置10は、入力部11、出力部12、イベントキユー13、イベント関連付け部14、業務プロセスDB(データベース)15およびイベント管理DB(データベース)16を含んでいる。
入力部11はイベントデータの検索条件を入力する。イベントキユー13は個々の業務システム20から送信されたイベントデータをキューイングするバッファである。イベント関連付け部14はイベントキユー13内のイベントデータ81を業務データ単位にまとめ,業務データ間の関連付けを行う。イベント管理DB16は関連付けられた業務データが蓄積されるデータベースである。業務プロセスDB15は業務プロセスの定義情報と業務データの定義情報とが蓄積されるデータベースである。出力部12は表示クライアント20bから入力された検索条件に基づくイベント管理DB16の検索結果を出力する出力部である。
また、出力部12は、シミュレーション装置30からの要求に応じて業務プロセスDB15およびイベント管理DB16の内容をシミュレーション装置30に転送する機能も備えている。
表示クライアント20bは、たとえばwebブラウザのアプリケーションが実装された情報端末からなり、イベント管理装置10における検索結果を適宜可視化して表示する。
イベント管理装置10は個々の業務システム20から取得したイベントデータ81をイベント管理DB16で保存管理する。業務フロー情報は業務プロセスDB15に保存され、個々の業務モデル90毎に、イベントデータ81を追跡して表示クライアント20bに表示するトラッキング処理を行うときに用いられる。
イベント管理装置10は個々の業務システム20から取得したイベントデータ81をイベント管理DB16で保存管理する。業務フロー情報は業務プロセスDB15に保存され、個々の業務モデル90毎に、イベントデータ81を追跡して表示クライアント20bに表示するトラッキング処理を行うときに用いられる。
なお、本実施の形態の場合には、後述のシミュレーション装置30のシミュレーションで得られたイベントデータ81をイベント管理DB16に格納することにより、個々の業務モデル90の振る舞いを、シミュレーション装置30のシミュレーションにて得られたイベントデータ81を用いて追跡(トラッキング)することも可能になっている。
シミュレーション装置30は、入力部31、出力部32、シミュレーションエンジン部33、統計値計算部34、業務プロセスDB(データベース)40、イベント管理DB(データベース)50、統計値DB(データベース)60を含んでいる。
入力部31および出力部32は、たとえば、webサーバ等のソフトウェアおよびネットワークインタフェースで構成され、イベント管理装置10および操作端末装置70との間における情報に入出力を行う。
シミュレーションエンジン部33は、業務プロセスDB40およびイベント管理DB50の内容に基づいて、複数の業務システム20の各々が遂行する複数の業務を組み合わせて構成される業務プロセス(業務モデル90)のシミュレーションを実行し、実行結果を統計値計算部34に出力するソフトウェア、ファームウェアまたはハードウェアである。
統計値計算部34は、シミュレーションエンジン部33から入力された情報に基づいて、各種の統計値を計算し、統計値DB60に出力するソフトウェア、ファームウェアまたはハードウェアである。
操作端末装置70は、たとえばディスプレイ71、キーボード、マウス等のユーザインタフェースを備えたパーソナルコンピュータ等で構成されている。操作端末装置70には、モデル記述アプリケーション72、結果表示アプリケーション73等のソフトウェアが実装されている。
モデル記述アプリケーション72は、図2に例示されるような業務モデル90の作成等を行う。結果表示アプリケーション73は、たとえば、WEBブラウザ等のソフトウェアで構成され、シミュレーション装置30側の入力部31、出力部32を構成するWEBサーバとの間で情報の授受を行うことで、シミュレーション装置30に対する情報入力や、シミュレーション装置30からの出力情報の表示等を行う。
図3は、本実施の形態におけるイベントデータ81の構成の一例を示す概念図である。個々のイベントデータ81は、モデル名81a、イベント名81b、主キータイプ81c、主キー値81d、関連キータイプ81e、関連キー値81f、開始時刻または終了時刻等の時刻情報81g、値情報81h、のいずれか一つ以上を含んでいる。
複数の業務システム20を組み合わせて構成される業務プロセスが、一つの単位業務(たとえば一つの物品の受注から配送までの処理)を処理する場合に、個々の業務システム20で発生するイベントデータ81の集合がプロセスインスタンス80(業務インスタンス)である。図3では、一つのプロセスインスタンス80を構成するイベントデータ81の集合が例示されている。
図4および図5は、本実施の形態のシミュレーション装置30における業務プロセスDB40の構成の一例を示す概念図である。なお、この業務プロセスDB40は、イベント管理装置10に備えられた業務プロセスDB15の、一部または全部の内容の複製である。
業務プロセスDB40は、モデル名称テーブル41、ノード情報テーブル42、リンク情報テーブル43、パラメタセット定義テーブル44およびパラメタセット細目テーブル45を含んでいる。
モデル名称テーブル41には、業務モデル90のモデルID41aとモデル名41bが対応つけて格納される。この業務モデル90としては、As−isモデル90aおよびTo−beモデル90bの両方が格納される。
ノード情報テーブル42には、ノードID42a、ノード名称42b、ノードタイプ42c、モデルID42d、X座標42e、Y座標42fが格納される。
ノードID42aは、業務モデル90を構成する個々のアクティビティ91等のノードの識別情報である。本実施の形態では、受注業務21〜配送業務25の各々に対応したアクティビティ91に、“2001”〜“2005”の各々値が付与され、業務開始記号93には“2006”が付与され、業務完了記号94には“2007”が付与されている。
ノードID42aは、業務モデル90を構成する個々のアクティビティ91等のノードの識別情報である。本実施の形態では、受注業務21〜配送業務25の各々に対応したアクティビティ91に、“2001”〜“2005”の各々値が付与され、業務開始記号93には“2006”が付与され、業務完了記号94には“2007”が付与されている。
ノード名称42bは、当該ノードを構成する受注業務21〜検品業務27の個々の業務名を示す。
ノードタイプ42cは、業務モデル90を構成する個々のノードのタイプが設定され、ノードID42aが“2001”〜“2005”のノードにはアクティビティ91が設定され、“2006”のノードには業務開始記号93を示すinitialNodeが設定され、“2007”のノードには業務完了記号94を示すfinalNodeが設定されている。
ノードタイプ42cは、業務モデル90を構成する個々のノードのタイプが設定され、ノードID42aが“2001”〜“2005”のノードにはアクティビティ91が設定され、“2006”のノードには業務開始記号93を示すinitialNodeが設定され、“2007”のノードには業務完了記号94を示すfinalNodeが設定されている。
モデルID42dは、As−isモデル90a、To−beモデル90b等の個々の業務モデル90に付与された識別情報である。
X座標42eおよびY座標42fは、業務モデル90の表示画面内におけるX座標およびY座標である。
X座標42eおよびY座標42fは、業務モデル90の表示画面内におけるX座標およびY座標である。
リンク情報テーブル43には、上位側ノードID43aおよび下位側ノードID43bが格納される。上位側ノードID43aは、当該ノードの上流側(遷移元)のノードのノードIDである。下位側ノードID43bは、自ノードの下流側(遷移先)のノードのノードIDである。上位側ノードID43aから下位側ノードID43bに向かう方向に遷移92を意味する矢印が描画される。
パラメタセット定義テーブル44には、パラメタセットID44a、パラメタセット名44b、As−is業務モデル名44c、To−be業務モデル名44dが対応つけて格納されている。
パラメタセットID44aは、複数のパラメタセットを識別するための識別情報である。
パラメタセット名44bは、個々のパラメタセットに付与された名称である。
パラメタセット名44bは、個々のパラメタセットに付与された名称である。
As−is業務モデル名44cおよびTo−be業務モデル名44dは、当該パラメタセットが適用される、As−isモデル90aおよびTo−beモデル90bの名称である。
パラメタセット細目テーブル45は、パラメタセットID45a、アクティビティ名45b、変更フラグ45c、所要時間45dおよびコスト45eが対応付けて格納され、特定のパラメタセットに関する詳細な情報が設定される。
すなわち、パラメタセットID45aは、パラメタセットの識別情報である。
アクティビティ名45bは、当該パラメタセットが適用されるアクティビティ名である。変更フラグ45cは、個々のアクティビティにおけるパラメタの変更の有無を示す情報である。
アクティビティ名45bは、当該パラメタセットが適用されるアクティビティ名である。変更フラグ45cは、個々のアクティビティにおけるパラメタの変更の有無を示す情報である。
所要時間45dは、個々のアクティビティの所要時間であり、外部から変更可能である。空白の場合は、変更無しで、個々のアクティビティ91におけるデフォルトの値が用いられる。
コスト45eは、アクティビティ名45bに対応するアクティビティ91におけるコストの増減設定値であり、空白の場合は、変更無しで、個々のアクティビティ91におけるデフォルトの値が用いられる。
図6は、本実施の形態における統計値DB60の構成の一例を示す概念図である。
統計値DB60は、実行条件テーブル61、統計値テーブル62で構成されている。
実行条件テーブル61には、条件ID61a、As−is名61b、To−be名61c、パラメタセット名61d、対象期間61e、実行名61fおよび実行開始時刻61gが、条件ID61aに対応付けられて格納されている。
統計値DB60は、実行条件テーブル61、統計値テーブル62で構成されている。
実行条件テーブル61には、条件ID61a、As−is名61b、To−be名61c、パラメタセット名61d、対象期間61e、実行名61fおよび実行開始時刻61gが、条件ID61aに対応付けられて格納されている。
条件ID61aは、シミュレーション時に設定される種々の実行条件の各々に付与された識別情報である。
As−is名61bは、現行の業務モデル(As−isモデル)の名称が格納される。
As−is名61bは、現行の業務モデル(As−isモデル)の名称が格納される。
To−be名61cは、シミュレーション対象となった改善案の業務モデル(To−beモデル)の名称である。
パラメタセット名61dは、当該実行条件で用いられたパラメタセットに付与された名称である。
パラメタセット名61dは、当該実行条件で用いられたパラメタセットに付与された名称である。
対象期間61eは、シミュレーションの対象となった期間(開始日、終了日)である。
実行名61fは、条件ID61aで特定される実行条件に付与された名称である。
実行開始時刻61gは、条件ID61aで特定される実行条件で実行されたシミュレーションの開始時刻である。
実行名61fは、条件ID61aで特定される実行条件に付与された名称である。
実行開始時刻61gは、条件ID61aで特定される実行条件で実行されたシミュレーションの開始時刻である。
統計値テーブル62は、統計値ID62a、条件ID62b、タイプ62c、名前62d、平均値62e、最小値62f、最大値62gおよび回数62hを格納している。
統計値ID62aは、個々の統計値を識別する識別情報である。
統計値ID62aは、個々の統計値を識別する識別情報である。
条件ID62bには、実行条件テーブル61における条件ID61aの値が設定される。
タイプ62cには、ノードの種類が格納される。
タイプ62cには、ノードの種類が格納される。
名前62dには、タイプ62cで特定されるノードの名称が格納される。
平均値62eには、アクティビティの実行回数の平均値が格納される。
最小値62fには、アクティビティの実行回数の最小値が格納される。
平均値62eには、アクティビティの実行回数の平均値が格納される。
最小値62fには、アクティビティの実行回数の最小値が格納される。
最大値62gには、アクティビティの実行回数の最大値が格納される。
回数62hには、アクティビティの実行累積回数が格納される。
図7は、本実施の形態のイベント管理DB50の構成の一例を示す概念図である。なお、この図7は、図3に例示されるNo.1〜No.10からなる複数のイベントデータ81のうち、最初のNo.1のイベントデータ81が登録された状態のイベント管理DB50の内容が例示されている。
回数62hには、アクティビティの実行累積回数が格納される。
図7は、本実施の形態のイベント管理DB50の構成の一例を示す概念図である。なお、この図7は、図3に例示されるNo.1〜No.10からなる複数のイベントデータ81のうち、最初のNo.1のイベントデータ81が登録された状態のイベント管理DB50の内容が例示されている。
同様に、図8、図9、図10、図11、図12、図13、図14、図15および図16は、図3に例示されるNo.2〜No.10の各々のイベントデータ81が順次登録された場合の、イベント管理DB50の内容の推移を示している。
イベント管理DB50は、ビジネスデータテーブル51、ビジネスデータ関係テーブル52、イベントデータテーブル53およびプロパティテーブル54で構成されている。
ビジネスデータテーブル51は、業務データID51aに対して、業務データタイプ51b、業務データ値51c、モデル名51dが対応付けられて格納されている。
ビジネスデータテーブル51は、業務データID51aに対して、業務データタイプ51b、業務データ値51c、モデル名51dが対応付けられて格納されている。
業務データID51aは、イベントデータの発生元の業務データを識別する識別情報である。
業務データタイプ51bは、業務データの種別を示す情報である。
業務データタイプ51bは、業務データの種別を示す情報である。
業務データ値51cは、個々の実際に発生した業務(業務インスタンス)を識別する識別情報である。
モデル名51dは、業務インスタンスが処理された業務モデル90のモデル名である。
モデル名51dは、業務インスタンスが処理された業務モデル90のモデル名である。
ビジネスデータ関係テーブル52は、上位側業務ID52a、下位側業務ID52bからなり、業務データ間の依存関係が設定される。
上位側業務ID52aには、当該イベントデータが発生した業務の遷移元の業務データID51aが設定される。
上位側業務ID52aには、当該イベントデータが発生した業務の遷移元の業務データID51aが設定される。
下位側業務ID52bは、当該イベントデータが発生した業務の遷移先の業務データID51aが設定される。
イベントデータテーブル53は、イベントID53a、業務データID53b、イベント名53c、開始時刻53dおよび終了時刻53eを対応つけて格納する。
イベントデータテーブル53は、イベントID53a、業務データID53b、イベント名53c、開始時刻53dおよび終了時刻53eを対応つけて格納する。
イベントID53aは、個々のイベントデータ81を識別する識別情報である。
業務データID53bには、ビジネスデータテーブル51の業務データID51aが設定される。
業務データID53bには、ビジネスデータテーブル51の業務データID51aが設定される。
イベント名53cは、イベントデータ81に付与された名称である。
開始時刻53dは、イベントデータ81の時刻情報81gで特定されるイベントの開始時刻である。
開始時刻53dは、イベントデータ81の時刻情報81gで特定されるイベントの開始時刻である。
終了時刻53eは、イベントデータ81の時刻情報81gで特定されるイベントの終了時刻である。
プロパティテーブル54は、業務データID54a、業務データ名54bおよび業務データ値54cが対応付けて格納されている。
プロパティテーブル54は、業務データID54a、業務データ名54bおよび業務データ値54cが対応付けて格納されている。
業務データID54aは、ビジネスデータテーブル51の業務データID51aである。
業務データ名54bは、業務データID51aで特定される業務データに付与された名前である。
業務データ名54bは、業務データID51aで特定される業務データに付与された名前である。
業務データ値54cは、業務データID51aで特定される業務データの値である。
上述のような構成のイベント管理DB50に対して、たとえば、図3のプロセスインスタンス80が入力されると、No.1〜No.6では、共通の「受注伝票」を媒介として業務が進行するため、業務データID51aとして「受注伝票」に対応した「B1」が設定される。No.7〜No.10では、当該「受注伝票」で特定される物品の配送業務が「配送伝票」を媒介として進行するため、当該「配送伝票」に対応した業務データID51aとして、「B2」が設定される。
上述のような構成のイベント管理DB50に対して、たとえば、図3のプロセスインスタンス80が入力されると、No.1〜No.6では、共通の「受注伝票」を媒介として業務が進行するため、業務データID51aとして「受注伝票」に対応した「B1」が設定される。No.7〜No.10では、当該「受注伝票」で特定される物品の配送業務が「配送伝票」を媒介として進行するため、当該「配送伝票」に対応した業務データID51aとして、「B2」が設定される。
また、「配送伝票」が最初に生成された契機で発生したNo.7のイベントデータ81には、主キータイプ81c、主キー値81dの他に、対応する前記「受注伝票」との関連を特定するための情報として、関連キータイプ81e、関連キー値81fの情報が含まれている。
No.1のイベントデータ81が入力されると、モデル名81aがモデル名51dに設定され、イベント名81bは発生元のアクティビティの名称に対応したイベント名53cに設定され、主キータイプ81cは、業務データタイプ51bに設定され、業務データ値51cに設定され、主キー値81dは業務データ値51cに設定され、時刻情報81gは開始時刻53dに設定され、値情報81hは業務データ値54cに設定される。No.2〜6に入力に際しても、図8、図9、図10、図11、図12のように推移して、ほぼ同様に処理される。
図13のイベント管理DB50の状態は、No.7のイベントデータ81の追加直後の状態を示している。上述のように、「配送伝票」に対応した業務データID51aとして「B2」が設定され、ビジネスデータ関係テーブル52の下位側業務ID52bには、主キー(この場合「受注伝票」)と関連キー(この場合「配送伝票」)の関係が特定される。
以降は、図14、図15、図16のように、No.8〜No.10のイベントデータ81に入力に伴って、業務データID51a(業務データID53b)(業務データID54a)をキーとして、イベントデータテーブル53およびプロパティテーブル54にデータが埋められる。
イベント管理装置10が保存するイベントデータ81をシミュレーションに先立ちシミュレーション装置30にネットワークなどの手段でコピーする。業務プロセスDB15内の業務フロー情報も同様に業務プロセスDB40にコピーするか、シミュレーション装置30において別途登録する。
図1ではイベント管理装置10とシミュレーション装置30をそれぞれ独立としているが、同一装置上に配置してもよい。その場合、業務プロセスDB40とイベント管理DB50はイベント管理装置10とシミュレーション装置30で共有してもよい。また、操作端末装置70(クライアント)はイベント管理装置10とシミュレーション装置30からそれぞれ独立としているが、どちらかまたは両方と同一装置上に配置してもよい。また以下ではイベント管理装置10とシミュレーション装置30にそれぞれWebサーバ機能が搭載され操作端末装置70でWebブラウザ等の結果表示アプリケーション73を用いてイベント管理装置10やシミュレーション装置30の機能を使用することを前提とするが、Webアプリケーション以外の技術で通信してもよい。
イベントデータ81は、個々の業務システム20における業務(アクティビティ)の開始および終了時に業務システム20から取得する情報である。
あるプロセスインスタンス80は、業務フロー(業務モデル90)の1回の実行に相当する。プロセスインスタンス80に対し、イベントデータ81が持つ主キーと関連キーを関係付けて得られるイベントデータ81の集合が関係付けられる。
あるプロセスインスタンス80は、業務フロー(業務モデル90)の1回の実行に相当する。プロセスインスタンス80に対し、イベントデータ81が持つ主キーと関連キーを関係付けて得られるイベントデータ81の集合が関係付けられる。
業務モデル90(業務フロー)の例を図2に示す。この図2ではUML(Unified Modeling Language)のアクティビティ図を用い記述している。ここのアクティビティ91は楕円(角の丸い四角)で、遷移92は矢印のついた線で表現されている。また、業務開始記号93、業務完了記号94も用いられている。
図2の左側のAs−isモデル90aは、現状の業務モデル90を示し、右側のTo−beモデル90bは、一つの改善案の業務モデル90であるTo−beモデル90bが例示されている。
現状のAs−isモデル90aでは、業務開始記号93から遷移92、アクティビティ91(受注業務21)、遷移92、アクティビティ91(在庫確認業務22)、遷移92、アクティビティ91(出庫業務23)、遷移92、アクティビティ91(配送依頼業務24)、遷移92、アクティビティ91(配送業務25)の構成となっており、受注業務21〜配送業務25がシリアルに遂行される構成となっている。
一方、図2の右側のTo−beモデル90bは、業務開始記号93、遷移92、アクティビティ91(受注業務21)、までは、As−isモデル90aと同様であるが、その後に、遷移92を介して、並列に実行されるアクティビティ91(在庫確認業務22)、アクティビティ91(出庫業務23)、およびアクティビティ91(配送依頼業務24)に分岐して遷移し、その後、遷移92を介して一つのアクティビティ91(配送業務25)に遷移し、終了(業務完了記号94)するように変更した改善案である。
このAs−isモデル90aおよびTo−beモデル90bの作成、表示は、上述の図4および図5の業務プロセスDB40にデータを設定することで実現される。
すなわち、個々の業務モデル90の名称はモデル名称テーブル41で管理され、個々のアクティビティ91の属性や表示位置はノード情報テーブル42で管理され、個々のアクティビティ91に遷移の前後関係は、リンク情報テーブル43に設定される。
すなわち、個々の業務モデル90の名称はモデル名称テーブル41で管理され、個々のアクティビティ91の属性や表示位置はノード情報テーブル42で管理され、個々のアクティビティ91に遷移の前後関係は、リンク情報テーブル43に設定される。
任意の業務モデル90のシミュレーションの手順の一例を図17に示す。本実施の形態では、As−isモデル90aを定義した後(ステップ201)、実際の業務システム20からイベントデータ81を収集する(ステップ202)。そして、As−isモデル90aの改善のためのTo−beモデル90bを定義し(ステップ203)、シミュレーションに用いるパラメタセットを定義する(ステップ204)。
そして、パラメタセットを選択してシミュレーションを実行し、得られた統計値を記録し(ステップ205)、新たなパラメタセットを用いたシミュレーションを反復するか判定し(ステップ206)、これ以上シミュレーションしない場合には統計値を表示して(ステップ207)、統計値を比較検討する(ステップ208)。
そして、検討結果に応じて、ステップ203に戻って新たにTo−beモデル90bを定義しシミュレーションを行うか、ステップ204に戻って新たなパラメタセットを用いてシミュレーションを行うか判定し(ステップ209)、満足するシミュレーション結果(To−beモデル90b)が得られたら、シミュレーションを終了する。
このように、本実施の形態では、イベント管理装置10とシミュレーション装置30が連動することで、ユーザが実績を参照したいときのみ、イベント管理装置10が持つイベントデータから計算した統計値をシミュレーションの設定として用いることができ、従来よりも設定作業が容易になる。また場合によっては全てのパラメタに統計値をデフォルトとして設定しておくことで、利用者の設定の手間を軽減できる。
また、プロセスインスタンス80から取得した、実際の業務で発生したプロセスインスタンスの生起タイミングを用いるので、利用者がプロセスインスタンスの生起確率を推定する必要がなく、実際に発生したタイミングを用いることで利用者が想定しないようなプロセスインスタンスの生起も再現してシミュレーションされる、という利点がある。
さらに、業務モデル90の定義を業務フローとパラメタセットに分離することで、ある業務フローに対し複数のパラメタセットを定義しシミュレーション結果を比較することができ、最適なTo−beモデル90bを決定するのが容易になる。
以下、上述の個々の処理ステップについてさらに詳細に説明する。本実施の形態では、現状の業務モデル(As−isモデル90a)に従い業務が実行されている環境で、As−isモデル90aに対応したイベントデータ81をイベント管理装置10においてイベント管理DB16に取得し、このイベントデータ81を、図1のシミュレーション装置30のイベント管理DB50に複写して保持した状態を想定している。
操作端末装置70において、業務フローを記述するエディタ等のモデル記述アプリケーション72を用いてAs−isモデル90aを修正しTo−beモデル90bを作成する。もし業務フローを変更しない場合はAs−isモデル90aをそのままTo−beフローとして使用する。To−beモデル90bを元にしたAs−isモデル90aに関係付けてシミュレーション装置30の業務プロセスDB40に登録する。
パラメタセットを定義するときは、上述のパラメタセット定義テーブル44において、あるAs−isモデル90aに関係付けられているTo−beモデル90bの一覧から適当なものを選択する。
操作端末装置70のWebブラウザ等の結果表示アプリケーション73(ディスプレイ71)には、上述のモデル記述アプリケーション72で記述したTo−beモデル90bが表示される。この表示状態において、個々のアクティビティ91の部分をクリックすると、図18に例示されるようなアクティビティ91の定義入力画面(パラメタセット定義画面75)が表示されるので、当該アクティビティ91の振る舞いを適当に定義する。
パラメタセット定義画面75は、アクティビティ名称入力部75a、所要時間入力部75b、バッチ開始時刻入力部75c、開始条件入力部75d、カレンダ入力部75e、コスト入力部75f、作業時間帯入力部75g、変数・プロパティ設定パネル75h、As−is値埋め込みボタン75i、等で構成されている。
アクティビティ91の標準実行時間(所要時間入力部75b)、コスト定義(コスト入力部75f)、資源定義(変数・プロパティ設定パネル75h)などを設定する。
遷移92の部分をクリックすると遷移92の図示しない定義入力画面が表示される。遷移92での待ち時間、遷移確率、遷移条件などを設定する。
遷移92の部分をクリックすると遷移92の図示しない定義入力画面が表示される。遷移92での待ち時間、遷移確率、遷移条件などを設定する。
上述の定義入力画面(パラメタセット定義画面75)でアクティビティ91ないし遷移92の振る舞いを変更した場合、結果表示アプリケーション73で表示されるTo−beモデル90b上で変更した部分の色や線の太さを変更し、パラメタを設定したことが分かる表示とする。
図19に例示されるように、シミュレーション設定画面77では、パラメタセット名77a、As−isモデル名77b、To−beモデル名77c、モデル表示パネル77d、が表示され、モデル表示パネル77dには、業務モデル90(この場合、To−beモデル90b)が表示される。
そして、このモデル表示パネル77dの中では、上述の図18のパラメタセット定義画面75でパラメタが変更されたアクティビティ91が、異なる色(図19ではハッチングを付して表示している)で表示され、パラメタが変更されていることが一目で確認可能になっている。
シミュレーション実行時には対象とするパラメタセット(As−isモデル90aとTo−beモデル90bに関連付けられている)と、シミュレーション対象期間を設定する。以下ではシミュレーション対象期間に実行中だったプロセスインスタンス80をシミュレーション対象とする。なお、利用者が設定したシミュレーション対象期間内で開始・終了したプロセスインスタンス80を対象にすること、またはシミュレーション対象期間に開始したプロセスインスタンス80を対象にすること、などのバリエーションも可能である。
図20および図21は、上述のようなパラメタ設定処理を示すフローチャートである。
すなわち、パラメタセット定義画面75において利用者がアクティビティ91を選択し(ステップ211)、当該アクティビティ91に対する設定情報の変更を記録し(ステップ212)、選択してアクティビティ91に対するアクティビティ設定画面(パラメタセット定義画面75と同じ)を表示する(ステップ213)。
すなわち、パラメタセット定義画面75において利用者がアクティビティ91を選択し(ステップ211)、当該アクティビティ91に対する設定情報の変更を記録し(ステップ212)、選択してアクティビティ91に対するアクティビティ設定画面(パラメタセット定義画面75と同じ)を表示する(ステップ213)。
利用者がアクティビティ設定画面での入力終了を指示すると(ステップ214)、前もって記録したアクティビティ91の設定情報と入力終了時の設定情報を比較し(ステップ215)、値が異なる場合は、業務プロセスDB40のパラメタセットの定義(パラメタセット定義テーブル44)を新たな値で更新し(ステップ216)、業務プロセスDB40のパラメタセット細目テーブル45の変更フラグ45cを“True”に変更する(ステップ217)。
また、利用者がシミュレーション設定画面77を選択すると(ステップ221)、業務モデル90の描画情報を業務プロセスDB40のノード情報テーブル42から読み出し(ステップ222)、パラメタセット定義情報をパラメタセット定義テーブル44から読み出す(ステップ223)。
そして、変更フラグ45cが“True”のアクティビティ91に色を付ける(図19ではハッチングを付与)等の表示を実行する(ステップ224)。
これにより、利用者がパラメタセットで従来と異なる振る舞いをさせたいときに、どこに設定したかを把握できると、利用者が設定忘れをしていないか確認しやすい、という利点がある。
これにより、利用者がパラメタセットで従来と異なる振る舞いをさせたいときに、どこに設定したかを把握できると、利用者が設定忘れをしていないか確認しやすい、という利点がある。
次に、シミュレーション実行時の処理を説明する。
例として図22に示すような業務の実行結果(個々の業務システム20から出力された複数のイベントデータ81の集合からなるプロセスインスタンス80)を元にシミュレーションする場合を想定する。
例として図22に示すような業務の実行結果(個々の業務システム20から出力された複数のイベントデータ81の集合からなるプロセスインスタンス80)を元にシミュレーションする場合を想定する。
図22では縦軸が時間軸であり、最初の矢印の始点が図2の「受注」アクティビティの開始を、終点が「受注」アクティビティの終了を表しているとする。矢印と次の矢印の間に隙間があるものは、遷移時間が発生したことを示す。すなわち、個々の矢印には、対応するアクティビティ91の受注業務21〜検品業務27の符号付している。
この図22の現状の例では、業務プロセスの開始タイミング、アクティビティ毎の実行時間の分布に偏りがある(たとえば、配送先、取り扱う商品等の)特定の条件で、所要時間などが他と異なる、等の理由で、後述のような単なる乱数等を用いたシミュレーションではプロセスがどのように流れているか自体の把握が困難である。このため、本実施の形態では、後述のように、実際の業務プロセスの実行結果であり、複数のイベントデータ81の集合からなるプロセスインスタンス80を用いてシミュレーションを実行し、シミュレーション結果を統計処理して、さらにシミュレーションに用いる。
図23に示されるように、従来の乱数でシミュレーションを行う場合は、それぞれのアクティビティないし遷移の実行時間などを全て乱数で決定された統計値として設定する。そのため実行時間などの実際の分布を、シミュレーション装置30が用意する乱数分布で十分近似できない場合、誤差が大きくなる可能性がある。
一方、図24に示すように、本実施の形態の場合、パラメタセットで明に振る舞いを変化させる部分以外は実際のイベントデータ81を元に実行時間や遷移時間や分岐先を計算する。そのためそれらの分布は実際に発生したものと同一である。業務フロー(業務モデル90)を変更した場合でも、対応するアクティビティ91や遷移92が存在すれば、実際に発生した実行時間を用いるので、乱数のみでシミュレーションする場合より正確であることが期待できる。そのとき、各イベントデータ81の時刻情報81g(開始時刻や終了時刻)は、その直前の時刻に合わせてずらし、イベントデータ81の実行時間は実際の場合と同じにする。
また、図25に例示されるように、To−beモデル90bにおいて新たなアクティビティ91や遷移92の分岐を追加したため(たとえば、アクティビティ91として、現状の業務モデル90にない発注業務26、検品業務27を追加する場合)、シミュレーション実行時に対応するイベントデータ81が存在しない場合のみ、追加部分(発注業務26、検品業務27)に関してのみ選択的に乱数で実行時刻などの時刻情報81gを生成することも可能である。
上記のようにイベントデータ81を用いて実行時間を計算するとき、例えば、図26のように、土曜日と日曜日が休日の職場で金曜日の夕方から開始し、金曜日の定時で一旦作業を中断し、月曜日の朝から続きを作業し、月曜日の午前中に終了した作業があるとする。この場合作業は金曜日の夕方と月曜日の午前中のみであるが、イベントデータ81の時刻情報81gからは2日以上費やしたようにみえてしまう。そこで、本実施の形態では、あらかじめ現状の作業におけるカレンダや作業時間を定義しておくことで作業時間を補正する。
さらに、本実施の形態では、イベントデータ81の時刻情報81g(開始時刻ないし終了時刻)が作業時間内に発生するという仮定の元に、開始時刻ないし終了時刻のヒストグラムを計算することでカレンダと作業時間を推定する。すなわち、図27に例示されるように、カレンダについてはイベントデータ81における開始時刻ないし終了時刻(時刻情報81g)が発生した日付を累積し、閾値以上発生した日付を営業日、その他を休業日と推定する。また作業時間については、例えば曜日ごとに作業時間を設定しているという仮定の元に、1週間を単位時間(例えば15分)ごとに区間として分割し、イベントデータ81の開始時刻ないし終了時刻が発生した回数を求め、閾値以上発生した区間を作業時間と仮定することで求めることができる。
図28は、このような推定処理の一例を示すフローチャートである。最初に対象処理期間を取得し(ステップ231)、曜日毎に、24時間単位で分割したヒストグラムHO(ステップ232)、曜日別のヒストグラムHC(ステップ233)、対象処理期間の日付別のヒストグラムHD(ステップ234)を準備し、さらに、処理対象期間内のイベントデータ81を用意する(ステップ235)。
そして、未処理のイベントデータ81がある間(ステップ236)、未処理のイベントデータ81を一つ選択し(ステップ237)、イベントデータ81の日付から曜日を取得し(ステップ238)、ヒストグラムHCを曜日で更新し(ステップ239)、ヒストグラムHOの該当曜日をイベントデータ81の時刻情報81gで更新し(ステップ240)、ヒストグラムHDをイベントデータ81の日付で更新する(ステップ241)。
そして、ステップ236ですべてのイベントデータ81の処理が終わったと判定されたら、ヒストグラムHOの曜日毎に、度数が所定の閾値以上連続した区間を求め、作業時間帯と推定する(ステップ242)。また、ヒストグラムHOにおいて度数が所定の閾値以上の曜日を営業日と推定する(ステップ243)。
さらに、ヒストグラムHDの日付毎に、度数が所定の閾値以上か判別し(ステップ244)、ヒストグラムHDで度数が所定の閾値以上で営業日でないか、所定の閾値以下で営業日の日付を、営業日の例外とする(ステップ245)。
これにより、利用者が既存業務プロセスの作業時間やカレンダを定義していなくても、イベントデータ81の分布から作業時間やカレンダを推定することで、利用者の設定の手間を軽減することができる。
一方、シミュレーション対象期間で設定した期間で生起するプロセスインスタンス80の数を増減したときの振る舞いをシミュレーションしたい場合がある。
プロセスインスタンス80の数を減らす には、プロセスインスタンス単位でイベントデータ81を使わないで(間引いて)シミュレーションすることで実現できる。
プロセスインスタンス80の数を減らす には、プロセスインスタンス単位でイベントデータ81を使わないで(間引いて)シミュレーションすることで実現できる。
一方、プロセスインスタンス80の数を増やすには、図29に示すように、シミュレーション対象期間101とは異なる期間(重畳期間102)のプロセスインスタンス80aを選択し、シミュレーション対象期間101の時刻となるようプロセスインスタンス80に対応するイベントデータ81の時刻情報をずらし、重畳してシミュレーション時に使用する。例えば多くの企業では週単位に作業を行うため、上記の時刻をずらす際に週単位でずらすことにより、作業の集中度などを損なわずにプロセスインスタンス80の数を増加させることができる。
図30 は、上述のプロセスインスタンス80の増減処理 の一例を示すフローチャートである。
まず、元のシミュレーション対象期間101と重畳期間102を入力する(ステップ251)。また増加率を入力する(ステップ252)。そして、重畳前のプロセスインスタンス数(amountPi)を計数する(ステップ253)。次に、プロセスインスタンス数を増加させる場合には(ステップ253a)、増加 率とamountPiから増やすべきプロセスインスタンス数(increase)を計算する(ステップ254)。
まず、元のシミュレーション対象期間101と重畳期間102を入力する(ステップ251)。また増加率を入力する(ステップ252)。そして、重畳前のプロセスインスタンス数(amountPi)を計数する(ステップ253)。次に、プロセスインスタンス数を増加させる場合には(ステップ253a)、増加 率とamountPiから増やすべきプロセスインスタンス数(increase)を計算する(ステップ254)。
その後、重畳期間102内のイベントデータ81を読み込み(ステップ255)、重畳期間102内の時刻をシミュレーション対象期間101内にずらすための時間差(delta)を計算する(ステップ256)。また、元のシミュレーション対象期間101を週単位に丸めた値を、重畳期間102の折り返し終期(wrap)とする(ステップ257)。
そして、まず、実行回数(count)を0に初期化し(ステップ258)、countがincrease未満か判別し(ステップ259)、未満の場合には、countをインクリメントして(ステップ260)、重畳期間102内のプロセスインスタンス80を1個選択する(ステップ261)。さらに、プロセスインスタンス80の最初に出現する時刻(firsttime)を取得する(ステップ262)。そして、重畳期間102の先頭からfirsttimeまでの期間を、wrapを単位として近似した値とdeltaの和を、ずらす時間(deltaforPii)とする(ステップ263)。そして、プロセスインスタンス80に含まれるイベントデータ81の時刻を、全てdeltaforPiiだけ引いた値を新たな時刻とする(ステップ264)。
この処理をcountがincrease未満の間反復する。ステップ259で、countがincreaseと等しいか超過したら終了する。
一方、 上述のステップ253aで、シミュレーション対象となるプロセスインスタンス80の数を減らす場合には、まず増減率とamountPiから減らすべきプロセスインスタンス数(decrease)を計算する(ステップ265)。その後、元のシミュレーション対象となるプロセスインスタンスから、乱数を用いてdecrease個のプロセスインスタンスを選択する(ステップ266)。選択したプロセスインスタンスをシミュレーション対象から除く(ステップ267)。
一方、 上述のステップ253aで、シミュレーション対象となるプロセスインスタンス80の数を減らす場合には、まず増減率とamountPiから減らすべきプロセスインスタンス数(decrease)を計算する(ステップ265)。その後、元のシミュレーション対象となるプロセスインスタンスから、乱数を用いてdecrease個のプロセスインスタンスを選択する(ステップ266)。選択したプロセスインスタンスをシミュレーション対象から除く(ステップ267)。
これにより、プロセスインスタンス80のデータを増やす場合にシミュレーション対象期間以外のデータを重畳するので、シミュレーション対象期間のデータと類似の特性を持つデータを選択すれば、シミュレーション対象期間と同様の特性で、増加したデータを用いシミュレーションすることが可能となる。またデータを削減する場合もプロセスインスタンス単位で削減することで、シミュレーション対象期間が持つ特性を損なわずにシミュレーション可能となる。
本実施の形態の場合、イベントデータ81から各種の統計値を求め、パラメタ設定時に利用することが可能である。あらかじめ統計値を求める期間を設定し統計値を計算しておき、例えば図18のパラメタセット定義画面75にあるAs−is値埋め込みボタン75iを押すと、該当するアクティビティ91の実行時間統計値をパラメタ欄に埋め込むことが可能である。これにより実際の統計値を簡単に参照できる。さらにこの値を元に、To−beモデル90bの値に編集しなおすことも可能である。
また、アクティビティ91ごとにAs−is値埋め込みボタン75iを押して統計値を埋め込むほかに、パラメタ編集に先立ち全てのアクティビティ91に統計値を埋め込み、統計値を即座に参照することもできる。
また、アクティビティ91以外に、遷移92の分岐部分での分岐確率や遷移に要した時間を統計値として求めておき、遷移92に対するパラメタとして設定し利用することもできる。
たとえば、図31の例では、現状のAs−isモデル90aを構成する個々のアクティビティ91の所要時間の代わりに、過去のイベントデータ81から求められた統計値を、To−beモデル90bの個々のアクティビティ91の所要時間としてAs−is値埋め込みボタン75iで一括して設定し、さらに、一部のアクティビティ91(この図31の場合、出庫業務23)では、所要時間入力部75bで利用者が任意の値(この場合、1.7Hの代わりに1H)を設定して、シミュレーションを実行する例を示している。
パラメタ設定時にまだ統計値を求めていない場合、その場で統計値を計算するとデータ量によっては計算時間が長くかかる可能性がある。統計値を参照したい時点でまだ統計値を計算していない場合は、図32に示すような統計値範囲設定画面78のダイアログを表示し、統計値計算時間指定欄78aおよび期間指定欄78bを用いて、統計値計算に使用する計算時間長ないしデータの期間を指定させる。これにより利用者が計算時間と統計値の精度のトレードオフを制御することができる。
イベントデータ81が持つ主キー値81dと関連キータイプ81eを用いてプロセスインスタンス80としてまとめると、プロセスインスタンス80の開始時刻はイベントデータ81のもっとも早い時刻として求められる。既存の乱数を用いるシミュレーション方式が持つ、プロセスインスタンス80の生成アルゴリズムの代わりに、イベントデータ81から求めたプロセスインスタンス80の開始時刻を用いることで、正確なプロセスインスタンス発生頻度でシミュレーションを行える。
また、プロセスで最初に発生するアクティビティがあらかじめ分かっている場合は、イベントデータ81の内、そのアクティビティ91から発生したイベントデータ81だけを検索し、それらの開始時刻を用いることもできる。
また 、プロセスインスタンス80の数を増減するには、図30に示したプロセスインスタンス80の増減処理の一例において求められたプロセスインスタンス80のもっとも早い時刻を用いることで、プロセスインスタンス発生頻度を調整することができる。
本実施の形態のシミュレーションではTo−beモデル90bの業務フローに従いアクティビティ91ごとにイベントデータ81に相当する情報を生成しながら実行している。これらの情報をイベントデータ81として図1のイベント管理装置10に登録することにより、図33に示すようなトラッキング画面74を用いて、業務システム20から取得したイベントデータ81に基づくトラッキング(追跡機能)と同一機能を用いてシミュレーションで生成したイベントデータ81のトラッキングを行うことができる。これにより、従来の単なるアニメーション表示とは異なり、To−beモデル90bのシミュレーションの結果をプロセスインスタンス単位で詳細に検討することができる。
すなわち、図33のトラッキング画面74は、メインパネル74a、業務データツリー74b、表示指示入力部74cで構成されている。
メインパネル74aには、To−beモデル90bが表示される。業務データツリー74bには一つのインスタンスを構成する複数のイベントデータ81が表示される。
メインパネル74aには、To−beモデル90bが表示される。業務データツリー74bには一つのインスタンスを構成する複数のイベントデータ81が表示される。
また、メインパネル74aに表示されるTo−beモデル90bでは、個々のアクティビティ91には、パラメタセット細目テーブル45のアクティビティ名45bと、シミュレーションに使用されたインスタンス(イベントデータ81)の主キー値81d、時刻情報81gが表示されている。
シミュレーションの実行結果は実行時に利用者が付けた実行名(実行名61f)とともに上述の図1の統計値DB60の統計値テーブル62に蓄積される。本実施の形態では、蓄積した実行結果(統計値)を一覧として表示し、利用者が比較表示したい項目を複数選択し、比較表示を指示する。
実行結果一覧は利用者がそれらを区別するのに十分な情報を表示する。例えば図34に例示される統計値表示画面76のように比較表示パネル76aに、実行名76b、To−beモデル名76c、パラメタセット名76d、期間76e、シミュレーションを実行した時刻(実行開始時刻76f)を表示する。また、As−isモデル選択欄76hが設けられており、シミュレーションの基礎となったAs−isモデル名を指定することができる。さらに、利用者がメモを付与して後に利用できるよう、備考欄76gを設けることもできる。
図35に、上述の統計値の計算および統計値DB60への追加処理、さらには、複数の統計値の一覧表示処理の一例のフローチャートを示す。
すなわち、シミュレーションを実行した後(ステップ271)、統計値を計算し(ステップ272)、得られた統計値を統計値DB60に追加する(ステップ273)。
すなわち、シミュレーションを実行した後(ステップ271)、統計値を計算し(ステップ272)、得られた統計値を統計値DB60に追加する(ステップ273)。
また、統計値表示画面76における統計値の表示では、統計値DB60の実行条件テーブル61から実行名61fの一覧を作成して実行名76bに表示し(ステップ281)、利用者は、実行名76bの欄の実行名を複数個選択し(ステップ282)、選択された実行名に対応する統計値を、統計値DB60の統計値テーブル62から読み出して表示する(ステップ283)。
このように、本実施の形態によれば、従来技術のようにシミュレーション結果を統計値としてユーザに示すだけでなく、業務インスタンス単位の振る舞いを提示することで、ユーザがより詳細な検討を行える。
なお、本発明は、上述の実施の形態に例示した構成に限らず、その趣旨を逸脱しない範囲で種々変更可能であることは言うまでもない。
なお、本発明は、上述の実施の形態に例示した構成に限らず、その趣旨を逸脱しない範囲で種々変更可能であることは言うまでもない。
(付記1)
複数のアクティビティを組み合わせて構成される既存の第1業務プロセスを改善した第2業務プロセスの振る舞いをコンピュータ上のシミュレーションで評価するシミュレーションプログラムであって、
前記第2業務プロセスの振る舞いを特徴付ける統計値を、前記第1業務プロセスの実行履歴に基づいて計算するステップと、
検出されたユーザ指示に基づいて、または自動的に、前記統計値を前記シミュレーションのパラメタとして設定するステップと、
を前記コンピュータに実行させることを特徴とするシミュレーションプログラム。
(付記2)
付記1記載のシミュレーションプログラムにおいて、
乱数を用いて前記第2業務プロセスの実行結果であるプロセスインスタンスを得るステップであって、前記実行履歴から求めた前記プロセスインスタンスの発生タイミングを用いて前記シミュレーションを実行するステップを、さらに前記コンピュータに実行させることを特徴とするシミュレーションプログラム。
(付記3)
付記2記載のシミュレーションプログラムにおいて、
ユーザが設定したシミュレーション対象期間に存在する前記プロセスインスタンスに、他の時間帯で発生した前記プロセスインスタンスを重畳することにより、前記対象期間内における前記プロセスインスタンスを実際よりも増加させて前記シミュレーションを行うステップを、さらに前記コンピュータに実行させることを特徴とするシミュレーションプログラム。
(付記4)
付記2記載のシミュレーションプログラムにおいて、
ユーザが設定したシミュレーション対象期間に存在する前記プロセスインスタンスを間引くことにより、実際よりも少ない前記プロセスインスタンスを用いて前記シミュレーションを実行することを特徴とするシミュレーションプログラム。
(付記5)
付記1記載のシミュレーションプログラムにおいて、
さらに、前記第2業務プロセスのシミュレーション時にイベントデータを生成するステップを前記コンピュータに実行させ、得られた前記イベントデータを、前記第2業務プロセスの挙動を追跡するトラッキング機能を備えた他の情報処理システムに入力することで、詳細に前記第2業務プロセスの振る舞いを観察可能にすることを特徴とするシミュレーションプログラム。
(付記6)
付記1記載のシミュレーションプログラムにおいて、
前記シミュレーションの定義情報を、前記第2業務プロセスを定義する業務フローと、前記業務フローに出現する前記アクティビティおよび当該アクティビティの遷移の振る舞いを定義するパラメタセットの2種類から構成し、同一の前記業務フローに対し、前記パラメタセットを変更した前記定義情報を複数個作成して前記コンピュータに前記シミュレーションを行わせることを特徴とするシミュレーションプログラム。
(付記7)
付記6記載のシミュレーションプログラムにおいて、
前記シミュレーションの前記パラメタセットの設定時に、前記業務フロー上の前記アクティビティと前記遷移に対し、前記パラメタセットを設定したか否かを前記業務フローを示す業務フロー図上で判別できるように表示する機能を前記コンピュータに実現させることを特徴とするシミュレーションプログラム。
(付記8)
付記6記載のシミュレーションプログラムにおいて、
異なる前記業務フローおよび前記パラメタセットの組み合わせの各々について実行された複数の前記シミュレーションの実行結果を複数個保存し、一覧から選択した前記実行結果をまとめて比較表示する機能を前記コンピュータに実現させることを特徴とするシミュレーションプログラム。
(付記9)
付記1記載のシミュレーションプログラムにおいて、
業務プロセスのシミュレーションをBPMが持つ既存の業務プロセスの実行履歴を用いて行うとき、
前記第1業務プロセスのカレンダ情報や作業時間、営業時間等の定義がない場合でも、前記第1業務プロセスの前記実行履歴から前記第1業務プロセスを構成する個々の前記アクティビティが実行された日付と作業時間帯、営業時間帯等を推定して前記シミュレーションに用いる機能を前記コンピュータに実現させることを特徴とするシミュレーションプログラム。
(付記10)
付記1記載のシミュレーションプログラムにおいて、
前記統計値は、前記第1業務プロセスと前記第2業務プロセスに共通の前記アクティビティの実行時間または当該アクティビティ間における遷移の分岐先確率を含むことを特徴とするシミュレーションプログラム。
(付記11)
複数のアクティビティを組み合わせて構成される既存の第1業務プロセスを改善した第2業務プロセスの振る舞いをシミュレーションで評価するシミュレーション方法であって、
前記第1業務プロセスの実行履歴を収集するステップと、
前記第2業務プロセスの振る舞いを特徴付ける統計値を、前記実行履歴から計算するステップと、
前記シミュレーションのパラメタ設定時に、前記統計値をユーザに挿入または設定させるステップと、
を含むことを特徴とするシミュレーション方法。
(付記12)
付記11記載のシミュレーション方法において、
前記統計値は、前記第1業務プロセスと前記第2業務プロセスに共通の前記アクティビティの実行時間または当該アクティビティ間における遷移の分岐先確率を含むことを特徴とするシミュレーション方法。
(付記13)
複数のアクティビティを組み合わせて構成される既存の第1業務プロセスを改善した第2業務プロセスの振る舞いをシミュレーションで評価する情報処理装置であって、
前記第1業務プロセスの実行履歴を記憶する記憶手段と、
前記第2業務プロセスの振る舞いを特徴付ける統計値を、前記第1業務プロセスの実行履歴に基づいて計算する機能と、前記シミュレーションのパラメタ設定時に、前記統計値をユーザに挿入または設定させる設定機能を実現する制御論理と、
を含むことを特徴とする情報処理装置。
(付記14)
付記13記載の情報処理装置において、
前記統計値は、前記第1業務プロセスと前記第2業務プロセスに共通の前記アクティビティの実行時間または当該アクティビティ間における遷移の分岐先確率を含むことを特徴とする情報処理装置。
複数のアクティビティを組み合わせて構成される既存の第1業務プロセスを改善した第2業務プロセスの振る舞いをコンピュータ上のシミュレーションで評価するシミュレーションプログラムであって、
前記第2業務プロセスの振る舞いを特徴付ける統計値を、前記第1業務プロセスの実行履歴に基づいて計算するステップと、
検出されたユーザ指示に基づいて、または自動的に、前記統計値を前記シミュレーションのパラメタとして設定するステップと、
を前記コンピュータに実行させることを特徴とするシミュレーションプログラム。
(付記2)
付記1記載のシミュレーションプログラムにおいて、
乱数を用いて前記第2業務プロセスの実行結果であるプロセスインスタンスを得るステップであって、前記実行履歴から求めた前記プロセスインスタンスの発生タイミングを用いて前記シミュレーションを実行するステップを、さらに前記コンピュータに実行させることを特徴とするシミュレーションプログラム。
(付記3)
付記2記載のシミュレーションプログラムにおいて、
ユーザが設定したシミュレーション対象期間に存在する前記プロセスインスタンスに、他の時間帯で発生した前記プロセスインスタンスを重畳することにより、前記対象期間内における前記プロセスインスタンスを実際よりも増加させて前記シミュレーションを行うステップを、さらに前記コンピュータに実行させることを特徴とするシミュレーションプログラム。
(付記4)
付記2記載のシミュレーションプログラムにおいて、
ユーザが設定したシミュレーション対象期間に存在する前記プロセスインスタンスを間引くことにより、実際よりも少ない前記プロセスインスタンスを用いて前記シミュレーションを実行することを特徴とするシミュレーションプログラム。
(付記5)
付記1記載のシミュレーションプログラムにおいて、
さらに、前記第2業務プロセスのシミュレーション時にイベントデータを生成するステップを前記コンピュータに実行させ、得られた前記イベントデータを、前記第2業務プロセスの挙動を追跡するトラッキング機能を備えた他の情報処理システムに入力することで、詳細に前記第2業務プロセスの振る舞いを観察可能にすることを特徴とするシミュレーションプログラム。
(付記6)
付記1記載のシミュレーションプログラムにおいて、
前記シミュレーションの定義情報を、前記第2業務プロセスを定義する業務フローと、前記業務フローに出現する前記アクティビティおよび当該アクティビティの遷移の振る舞いを定義するパラメタセットの2種類から構成し、同一の前記業務フローに対し、前記パラメタセットを変更した前記定義情報を複数個作成して前記コンピュータに前記シミュレーションを行わせることを特徴とするシミュレーションプログラム。
(付記7)
付記6記載のシミュレーションプログラムにおいて、
前記シミュレーションの前記パラメタセットの設定時に、前記業務フロー上の前記アクティビティと前記遷移に対し、前記パラメタセットを設定したか否かを前記業務フローを示す業務フロー図上で判別できるように表示する機能を前記コンピュータに実現させることを特徴とするシミュレーションプログラム。
(付記8)
付記6記載のシミュレーションプログラムにおいて、
異なる前記業務フローおよび前記パラメタセットの組み合わせの各々について実行された複数の前記シミュレーションの実行結果を複数個保存し、一覧から選択した前記実行結果をまとめて比較表示する機能を前記コンピュータに実現させることを特徴とするシミュレーションプログラム。
(付記9)
付記1記載のシミュレーションプログラムにおいて、
業務プロセスのシミュレーションをBPMが持つ既存の業務プロセスの実行履歴を用いて行うとき、
前記第1業務プロセスのカレンダ情報や作業時間、営業時間等の定義がない場合でも、前記第1業務プロセスの前記実行履歴から前記第1業務プロセスを構成する個々の前記アクティビティが実行された日付と作業時間帯、営業時間帯等を推定して前記シミュレーションに用いる機能を前記コンピュータに実現させることを特徴とするシミュレーションプログラム。
(付記10)
付記1記載のシミュレーションプログラムにおいて、
前記統計値は、前記第1業務プロセスと前記第2業務プロセスに共通の前記アクティビティの実行時間または当該アクティビティ間における遷移の分岐先確率を含むことを特徴とするシミュレーションプログラム。
(付記11)
複数のアクティビティを組み合わせて構成される既存の第1業務プロセスを改善した第2業務プロセスの振る舞いをシミュレーションで評価するシミュレーション方法であって、
前記第1業務プロセスの実行履歴を収集するステップと、
前記第2業務プロセスの振る舞いを特徴付ける統計値を、前記実行履歴から計算するステップと、
前記シミュレーションのパラメタ設定時に、前記統計値をユーザに挿入または設定させるステップと、
を含むことを特徴とするシミュレーション方法。
(付記12)
付記11記載のシミュレーション方法において、
前記統計値は、前記第1業務プロセスと前記第2業務プロセスに共通の前記アクティビティの実行時間または当該アクティビティ間における遷移の分岐先確率を含むことを特徴とするシミュレーション方法。
(付記13)
複数のアクティビティを組み合わせて構成される既存の第1業務プロセスを改善した第2業務プロセスの振る舞いをシミュレーションで評価する情報処理装置であって、
前記第1業務プロセスの実行履歴を記憶する記憶手段と、
前記第2業務プロセスの振る舞いを特徴付ける統計値を、前記第1業務プロセスの実行履歴に基づいて計算する機能と、前記シミュレーションのパラメタ設定時に、前記統計値をユーザに挿入または設定させる設定機能を実現する制御論理と、
を含むことを特徴とする情報処理装置。
(付記14)
付記13記載の情報処理装置において、
前記統計値は、前記第1業務プロセスと前記第2業務プロセスに共通の前記アクティビティの実行時間または当該アクティビティ間における遷移の分岐先確率を含むことを特徴とする情報処理装置。
10 イベント管理装置
11 入力部
12 出力部
13 イベントキユー
14 イベント関連付け部
15 業務プロセスDB
16 イベント管理DB
20 業務システム
20a 業務アプリケーション
20b 表示クライアント
21 受注業務
22 在庫確認業務
23 出庫業務
24 配送依頼業務
25 配送業務
26 発注業務
27 検品業務
30 シミュレーション装置
31 入力部
32 出力部
33 シミュレーションエンジン部
34 統計値計算部
40 業務プロセスDB
41 モデル名称テーブル
41a モデルID
41b モデル名
42 ノード情報テーブル
42a ノードID
42b ノード名称
42c ノードタイプ
42d モデルID
42e X座標
42f Y座標
43 リンク情報テーブル
43a 上位側ノードID
43b 下位側ノードID
44 パラメタセット定義テーブル
44a パラメタセットID
44b パラメタセット名
44c As−is業務モデル名
44d To−be業務モデル名
45 パラメタセット細目テーブル
45a パラメタセットID
45b アクティビティ名
45c 変更フラグ
45d 所要時間
45e コスト
50 イベント管理DB
51 ビジネスデータテーブル
51a 業務データID
51b 業務データタイプ
51c 業務データ値
51d モデル名
52 ビジネスデータ関係テーブル
52a 上位側業務ID
52b 下位側業務ID
53 イベントデータテーブル
53a イベントID
53b 業務データID
53c イベント名
53d 開始時刻
53e 終了時刻
54 プロパティテーブル
54a 業務データID
54b 業務データ名
54c 業務データ値
60 統計値DB
61 実行条件テーブル
61a 条件ID
61b As−is名
61c To−be名
61d パラメタセット名
61e 対象期間
61f 実行名
61g 実行開始時刻
62 統計値テーブル
62a 統計値ID
62b 条件ID
62c タイプ
62d 名前
62e 平均値
62f 最小値
62g 最大値
62h 回数
70 操作端末装置
71 ディスプレイ
72 モデル記述アプリケーション
73 結果表示アプリケーション
74 トラッキング画面
74a メインパネル
74b 業務データツリー
74c 表示指示入力部
75 パラメタセット定義画面
75a アクティビティ名称入力部
75b 所要時間入力部
75c バッチ開始時刻入力部
75d 開始条件入力部
75e カレンダ入力部
75f コスト入力部
75g 作業時間帯入力部
75h 変数・プロパティ設定パネル
75i As−is値埋め込みボタン
76 統計値表示画面
76a 比較表示パネル
76b 実行名
76c To−beモデル名
76d パラメタセット名
76e 期間
76f 実行開始時刻
76g 備考欄
76h As−isモデル選択欄
77 シミュレーション設定画面
77a パラメタセット名
77b As−isモデル名
77c To−beモデル名
77d モデル表示パネル
78 統計値範囲設定画面
78a 統計値計算時間指定欄
78b 期間指定欄
80 プロセスインスタンス
80a プロセスインスタンス
81 イベントデータ
81a モデル名
81b イベント名
81c 主キータイプ
81d 主キー値
81e 関連キータイプ
81f 関連キー値
81g 時刻情報
81h 値情報
90 業務モデル
90a As−isモデル
90b To−beモデル
91 アクティビティ
92 遷移
93 業務開始記号
94 業務完了記号
101 シミュレーション対象期間
102 重畳期間
11 入力部
12 出力部
13 イベントキユー
14 イベント関連付け部
15 業務プロセスDB
16 イベント管理DB
20 業務システム
20a 業務アプリケーション
20b 表示クライアント
21 受注業務
22 在庫確認業務
23 出庫業務
24 配送依頼業務
25 配送業務
26 発注業務
27 検品業務
30 シミュレーション装置
31 入力部
32 出力部
33 シミュレーションエンジン部
34 統計値計算部
40 業務プロセスDB
41 モデル名称テーブル
41a モデルID
41b モデル名
42 ノード情報テーブル
42a ノードID
42b ノード名称
42c ノードタイプ
42d モデルID
42e X座標
42f Y座標
43 リンク情報テーブル
43a 上位側ノードID
43b 下位側ノードID
44 パラメタセット定義テーブル
44a パラメタセットID
44b パラメタセット名
44c As−is業務モデル名
44d To−be業務モデル名
45 パラメタセット細目テーブル
45a パラメタセットID
45b アクティビティ名
45c 変更フラグ
45d 所要時間
45e コスト
50 イベント管理DB
51 ビジネスデータテーブル
51a 業務データID
51b 業務データタイプ
51c 業務データ値
51d モデル名
52 ビジネスデータ関係テーブル
52a 上位側業務ID
52b 下位側業務ID
53 イベントデータテーブル
53a イベントID
53b 業務データID
53c イベント名
53d 開始時刻
53e 終了時刻
54 プロパティテーブル
54a 業務データID
54b 業務データ名
54c 業務データ値
60 統計値DB
61 実行条件テーブル
61a 条件ID
61b As−is名
61c To−be名
61d パラメタセット名
61e 対象期間
61f 実行名
61g 実行開始時刻
62 統計値テーブル
62a 統計値ID
62b 条件ID
62c タイプ
62d 名前
62e 平均値
62f 最小値
62g 最大値
62h 回数
70 操作端末装置
71 ディスプレイ
72 モデル記述アプリケーション
73 結果表示アプリケーション
74 トラッキング画面
74a メインパネル
74b 業務データツリー
74c 表示指示入力部
75 パラメタセット定義画面
75a アクティビティ名称入力部
75b 所要時間入力部
75c バッチ開始時刻入力部
75d 開始条件入力部
75e カレンダ入力部
75f コスト入力部
75g 作業時間帯入力部
75h 変数・プロパティ設定パネル
75i As−is値埋め込みボタン
76 統計値表示画面
76a 比較表示パネル
76b 実行名
76c To−beモデル名
76d パラメタセット名
76e 期間
76f 実行開始時刻
76g 備考欄
76h As−isモデル選択欄
77 シミュレーション設定画面
77a パラメタセット名
77b As−isモデル名
77c To−beモデル名
77d モデル表示パネル
78 統計値範囲設定画面
78a 統計値計算時間指定欄
78b 期間指定欄
80 プロセスインスタンス
80a プロセスインスタンス
81 イベントデータ
81a モデル名
81b イベント名
81c 主キータイプ
81d 主キー値
81e 関連キータイプ
81f 関連キー値
81g 時刻情報
81h 値情報
90 業務モデル
90a As−isモデル
90b To−beモデル
91 アクティビティ
92 遷移
93 業務開始記号
94 業務完了記号
101 シミュレーション対象期間
102 重畳期間
Claims (10)
- 複数のアクティビティを組み合わせて構成される既存の第1業務プロセスを改善した第2業務プロセスの振る舞いをコンピュータ上のシミュレーションで評価するシミュレーションプログラムであって、
前記第2業務プロセスの振る舞いを特徴付ける統計値を、前記第1業務プロセスの実行履歴に基づいて計算するステップと、
検出されたユーザ指示に基づいて、または自動的に前記統計値を前記シミュレーションのパラメタとして設定するステップと、
を前記コンピュータに実行させることを特徴とするシミュレーションプログラム。 - 請求項1記載のシミュレーションプログラムにおいて、
乱数を用いて前記第2業務プロセスの実行結果であるプロセスインスタンスを得るステップであって、前記実行履歴から求めた前記プロセスインスタンスの発生タイミングを用いて前記シミュレーションを実行するステップを、さらに前記コンピュータに実行させることを特徴とするシミュレーションプログラム。 - 請求項2記載のシミュレーションプログラムにおいて、
ユーザが設定したシミュレーション対象期間に存在する前記プロセスインスタンスに、他の時間帯で発生した前記プロセスインスタンスを重畳することにより、前記対象期間内における前記プロセスインスタンスを実際よりも増加させて前記シミュレーションを行うステップを、さらに前記コンピュータに実行させることを特徴とするシミュレーションプログラム。 - 請求項2記載のシミュレーションプログラムにおいて、
ユーザが設定したシミュレーション対象期間に存在する前記プロセスインスタンスを間引くことにより、実際よりも少ない前記プロセスインスタンスを用いて前記シミュレーションを実行することを特徴とするシミュレーションプログラム。 - 請求項1記載のシミュレーションプログラムにおいて、
さらに、前記第2業務プロセスのシミュレーション時にイベントデータを生成するステップを前記コンピュータに実行させ、得られた前記イベントデータを、前記第2業務プロセスの挙動を追跡するトラッキング機能を備えた他の情報処理システムに入力することで、詳細に前記第2業務プロセスの振る舞いを観察可能にすることを特徴とするシミュレーションプログラム。 - 請求項1記載のシミュレーションプログラムにおいて、
前記シミュレーションの定義情報を、前記第2業務プロセスを定義する業務フローと、前記業務フローに出現する前記アクティビティおよび当該アクティビティの遷移の振る舞いを定義するパラメタセットの2種類から構成し、同一の前記業務フローに対し、前記パラメタセットを変更した前記定義情報を複数個作成して前記コンピュータに前記シミュレーションを行わせることを特徴とするシミュレーションプログラム。 - 請求項6記載のシミュレーションプログラムにおいて、
前記シミュレーションの前記パラメタセットの設定時に、前記業務フロー上の前記アクティビティと前記遷移に対し、前記パラメタセットを設定したか否かを前記業務フローを示す業務フロー図上で判別できるように表示する機能を前記コンピュータに実現させることを特徴とするシミュレーションプログラム。 - 請求項6記載のシミュレーションプログラムにおいて、
異なる前記業務フローおよび前記パラメタセットの組み合わせの各々について実行された複数の前記シミュレーションの実行結果を複数個保存し、一覧から選択した前記実行結果をまとめて比較表示する機能を前記コンピュータに実現させることを特徴とするシミュレーションプログラム。 - 請求項1記載のシミュレーションプログラムにおいて、
業務プロセスのシミュレーションをBPMが持つ既存の業務プロセスの実行履歴を用いて行うとき、
前記第1業務プロセスのカレンダ情報や作業時間、営業時間等の定義がない場合でも、前記第1業務プロセスの前記実行履歴から前記第1業務プロセスを構成する個々の前記アクティビティが実行された日付と作業時間帯、営業時間帯等を推定して前記シミュレーションに用いる機能を前記コンピュータに実現させることを特徴とするシミュレーションプログラム。 - 請求項1記載のシミュレーションプログラムにおいて、
前記統計値は、前記第1業務プロセスと前記第2業務プロセスに共通の前記アクティビティの実行時間または当該アクティビティ間における遷移の分岐先確率を含むことを特徴とするシミュレーションプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005203689A JP2007025823A (ja) | 2005-07-12 | 2005-07-12 | シミュレーションプログラム、シミュレーション方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005203689A JP2007025823A (ja) | 2005-07-12 | 2005-07-12 | シミュレーションプログラム、シミュレーション方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007025823A true JP2007025823A (ja) | 2007-02-01 |
Family
ID=37786529
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005203689A Pending JP2007025823A (ja) | 2005-07-12 | 2005-07-12 | シミュレーションプログラム、シミュレーション方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007025823A (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008203934A (ja) * | 2007-02-16 | 2008-09-04 | Nec Corp | 分散ワークフローシミュレーションシステム、方法、及び、プログラム |
JP2009003610A (ja) * | 2007-06-20 | 2009-01-08 | Konica Minolta Holdings Inc | 業務最適化システム |
JP2010250800A (ja) * | 2009-02-02 | 2010-11-04 | Nec (China) Co Ltd | エンジンプロセスの構築方法および装置 |
JP2018195040A (ja) * | 2017-05-17 | 2018-12-06 | 株式会社日立製作所 | ビジネスプロセス評価装置及びビジネスプロセス評価方法 |
CN110058927A (zh) * | 2019-03-14 | 2019-07-26 | 泰山医学院 | 一种计算机数据处理系统及其方法 |
JP2020030650A (ja) * | 2018-08-23 | 2020-02-27 | 株式会社日立製作所 | サプライチェーン業務プロセス最適化装置およびサプライチェーン業務支援方法 |
WO2021240832A1 (ja) * | 2020-05-27 | 2021-12-02 | 日本電信電話株式会社 | 処理装置、処理方法および処理プログラム |
JP2022108058A (ja) * | 2021-01-12 | 2022-07-25 | エヌ・ティ・ティ・アドバンステクノロジ株式会社 | シナリオ生成装置、シナリオ生成システム、シナリオ生成方法及びプログラム |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02284853A (ja) * | 1989-04-27 | 1990-11-22 | Nissan Motor Co Ltd | 生産ラインの管理方法 |
JPH08212273A (ja) * | 1995-02-08 | 1996-08-20 | Oki Electric Ind Co Ltd | 製品コスト管理支援装置 |
JP2000035817A (ja) * | 1998-05-13 | 2000-02-02 | Nec Corp | 製造ラインシミュレ―タにおける評価値算出システム及びその算出方法並びにその制御プログラム記録媒体 |
JP2004021744A (ja) * | 2002-06-18 | 2004-01-22 | Hitachi Ltd | 業務工程の状況把握システム、業務工程の状況把握システムの記録媒体、及び業務工程の状況把握表示装置 |
JP2004310564A (ja) * | 2003-04-09 | 2004-11-04 | Yamato System Development Co Ltd | 物流作業分析システム |
-
2005
- 2005-07-12 JP JP2005203689A patent/JP2007025823A/ja active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02284853A (ja) * | 1989-04-27 | 1990-11-22 | Nissan Motor Co Ltd | 生産ラインの管理方法 |
JPH08212273A (ja) * | 1995-02-08 | 1996-08-20 | Oki Electric Ind Co Ltd | 製品コスト管理支援装置 |
JP2000035817A (ja) * | 1998-05-13 | 2000-02-02 | Nec Corp | 製造ラインシミュレ―タにおける評価値算出システム及びその算出方法並びにその制御プログラム記録媒体 |
JP2004021744A (ja) * | 2002-06-18 | 2004-01-22 | Hitachi Ltd | 業務工程の状況把握システム、業務工程の状況把握システムの記録媒体、及び業務工程の状況把握表示装置 |
JP2004310564A (ja) * | 2003-04-09 | 2004-11-04 | Yamato System Development Co Ltd | 物流作業分析システム |
Non-Patent Citations (1)
Title |
---|
戸田 保一 YASUICHI TODA, ビジネスプロセスモデリング 初版, vol. 第1版, JPN6008058477, 12 October 2000 (2000-10-12), pages 223 - 238, ISSN: 0001184982 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008203934A (ja) * | 2007-02-16 | 2008-09-04 | Nec Corp | 分散ワークフローシミュレーションシステム、方法、及び、プログラム |
JP2009003610A (ja) * | 2007-06-20 | 2009-01-08 | Konica Minolta Holdings Inc | 業務最適化システム |
JP2010250800A (ja) * | 2009-02-02 | 2010-11-04 | Nec (China) Co Ltd | エンジンプロセスの構築方法および装置 |
JP2018195040A (ja) * | 2017-05-17 | 2018-12-06 | 株式会社日立製作所 | ビジネスプロセス評価装置及びビジネスプロセス評価方法 |
JP2020030650A (ja) * | 2018-08-23 | 2020-02-27 | 株式会社日立製作所 | サプライチェーン業務プロセス最適化装置およびサプライチェーン業務支援方法 |
CN110058927A (zh) * | 2019-03-14 | 2019-07-26 | 泰山医学院 | 一种计算机数据处理系统及其方法 |
WO2021240832A1 (ja) * | 2020-05-27 | 2021-12-02 | 日本電信電話株式会社 | 処理装置、処理方法および処理プログラム |
JPWO2021240832A1 (ja) * | 2020-05-27 | 2021-12-02 | ||
JP7477791B2 (ja) | 2020-05-27 | 2024-05-02 | 日本電信電話株式会社 | 処理装置、処理方法および処理プログラム |
JP2022108058A (ja) * | 2021-01-12 | 2022-07-25 | エヌ・ティ・ティ・アドバンステクノロジ株式会社 | シナリオ生成装置、シナリオ生成システム、シナリオ生成方法及びプログラム |
JP7157182B2 (ja) | 2021-01-12 | 2022-10-19 | エヌ・ティ・ティ・アドバンステクノロジ株式会社 | シナリオ生成装置、シナリオ生成システム、シナリオ生成方法及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Van der Aalst et al. | Business process simulation | |
JP2007025823A (ja) | シミュレーションプログラム、シミュレーション方法 | |
KR101066949B1 (ko) | 업무 분석 프로그램을 기록한 컴퓨터 판독가능한 기록 매체 및 업무 분석 장치 | |
JP5093990B2 (ja) | バグ管理システム | |
US20100010856A1 (en) | Method and system for constraint-based project scheduling | |
US20160086121A1 (en) | Providing Gamification Analytics in an Enterprise Environment | |
Andersson et al. | A spiral process model for case studies on software quality monitoring—method and metrics | |
CN109544014B (zh) | 基于历史数据回放的反欺诈方法及装置 | |
JP2021105928A (ja) | 学習データ生成方法、学習データ生成プログラムおよび情報処理装置 | |
US20130232192A1 (en) | Operations task management system and method | |
US8335759B2 (en) | Work analysis device and recording medium recording work analysis program | |
Morkos et al. | Requirement change propagation prediction approach: results from an industry case study | |
US20100274601A1 (en) | Supply chain perameter optimization and anomaly identification in product offerings | |
JP5856906B2 (ja) | 業務課題分析支援システム | |
JP2018036917A (ja) | データ分析装置及びデータ分析方法 | |
WO2021100371A1 (ja) | 保全計画支援方法および保全計画支援装置 | |
Depaire et al. | Data-driven process simulation | |
JP5775803B2 (ja) | 製造ラインシミュレーションモデル構築方法、製造ラインシミュレーションモデル構築装置、及び製造ラインシミュレーションモデル構築プログラム | |
Roubtsova et al. | KPIs and their properties defined with the EXTREME method | |
JP5255796B2 (ja) | 運用管理サポートシステム、プログラム | |
JP2007087421A (ja) | 作業計画立案システム及び作業計画立案プログラム | |
JP2019185132A (ja) | 推定プログラム、推定装置、及び推定方法 | |
JP2008299496A (ja) | 業務シミュレータおよびそのプログラム | |
JP6663779B2 (ja) | リスク評価装置およびリスク評価システム | |
JP2011204098A (ja) | プロジェクト管理における遅延情報可視化装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081118 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090526 |