JP5251623B2 - フロー比較処理方法及び装置 - Google Patents

フロー比較処理方法及び装置 Download PDF

Info

Publication number
JP5251623B2
JP5251623B2 JP2009056190A JP2009056190A JP5251623B2 JP 5251623 B2 JP5251623 B2 JP 5251623B2 JP 2009056190 A JP2009056190 A JP 2009056190A JP 2009056190 A JP2009056190 A JP 2009056190A JP 5251623 B2 JP5251623 B2 JP 5251623B2
Authority
JP
Japan
Prior art keywords
event
flow
storage unit
data storage
node
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.)
Active
Application number
JP2009056190A
Other languages
English (en)
Other versions
JP2010211457A (ja
Inventor
克久 中里
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2009056190A priority Critical patent/JP5251623B2/ja
Priority to US12/692,590 priority patent/US20100235296A1/en
Publication of JP2010211457A publication Critical patent/JP2010211457A/ja
Application granted granted Critical
Publication of JP5251623B2 publication Critical patent/JP5251623B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/067Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本技術は、フロー図を比較するための技術に関する。
フロー図による業務プロセス可視化の大きな目的のひとつは、可視化によって現状の業務プロセスの問題点を把握し、業務改善に繋げることである。
この業務プロセス可視化のために、業務システムのデータベースに蓄積された処理レコードから、関連を有する一連の業務イベントを抽出して業務プロセスとしてまとめて、フロー図として可視化する技術が存在している。
特開2008−27072号公報
上で述べたように現状の業務プロセスの問題点を把握するためには、現状の業務プロセスのフロー図単体ではなく、その業務プロセスが本来どうあるべきかを示したフロー図と比較した方が有効な分析が可能となる。
しかしながら、本来あるべきフローとは、システム設計時又は見直し時などに設計者や分析者が作成するものであるのに対し、現状の業務プロセスのフローとは出自が異なるために、同じ業務システムを対象としているにもかかわらず、多くの場合表現が異なるフロー図となる。ここでフローの表現が異なるとは、(a)フロー図を構成するノードの名称が異なる場合や、(b)ノードの粒度が異なり、数が合わない又は構造が異なっている場合である。
また、設計フローについては、設計時の考慮漏れ、設計時の仕様書記載漏れ、仕様追加又は変更の際の仕様書反映漏れという問題から実態に合わないような設計フローとなっている場合もある。同様に、業務実績フローについても、動作環境による時刻不整合やログ記録の不備などによって不正確な業務実績フローが生成されている可能性がある。
これらの問題により、ノード名でのマッチングやトポロジでのマッチングは困難になり、本来の目的である両図の比較による業務プロセスの問題点抽出も難しくなる。
従って、本技術の目的は、異なるフロー図の対比を可能にするための新規な技術を提供することである。
本フロー比較処理方法は、複数のイベントが時系列に並べられた複数のプロセスインスタンスのデータを第1のフローデータとして格納する第1フローデータ格納部に格納されている各プロセスインスタンスについて、当該プロセスインスタンス内における各イベントの出現位置を当該プロセスインスタンス内のイベントの出現回数に基づき決定し、各イベントに対応付けて出現位置を第1データ格納部に格納するステップと、第1データ格納部から、イベント種別毎にイベントのデータを抽出し、当該イベント種別に属する各イベントの出現位置が、予め定められた複数の位置区間のいずれに属するか判断すると共に、イベント種別毎に当該イベント種別の最頻出現位置区間を特定し、予め定められた複数のグループのうち最頻出現位置区間が属する最頻出現グループとイベント種別とを対応付けて第2データ格納部に格納するステップと、第1のフローデータとは異なり且つ第1のフローデータと対比される第2のフローデータに含まれる各ノードと複数のグループと同一数の区分けがなされている複数の出現位置区間のうち当該ノードの出現位置区間とを対応付けて格納している第2フローデータ格納部に格納されている、第2のフローデータに含まれる各ノードと当該ノードの出現位置区間とを関連付けて表示すると共に、第2データ格納部に格納されている、イベントの種類と当該イベントの種類の最頻出現グループとを関連付けて表示する表示ステップとを含む。
異なるフロー図の対比が可能となる。
図1は、本技術の実施の形態におけるフロー比較処理装置の機能ブロック図である。 図2は、本実施の形態におけるメインの処理フローを示す図である。 図3は、データベースA及びBに格納されているテーブルa、b及びcの一例を示す図である。 図4は、イベントインスタンスのデータを示す図である。 図5は、イベント最頻出現位置評価処理の処理フローを示す図である。 図6は、プロセスインスタンス群の一例を示す図である。 図7は、イベントの出現位置の算出を説明するための図である。 図8は、出現位置管理テーブルの一例を示す図である。 図9は、イベント最頻出現位置評価処理の処理フローを示す図である。 図10は、出現位置管理テーブルから特定のイベント種のレコードを抽出した例を示す図である。 図11は、各区間についての出現頻度を登録するテーブルの一例を示す図である。 図12は、各イベント種についての最頻出現区間のデータを登録するテーブルの一例を示す図である。 図13は、イベント種のグループ分けの一例を示す図である。 図14は、本実施の形態におけるメインの処理フローを示す図である。 図15は、距離算出処理の処理フローを示す図である。 図16は、最短距離の算出を説明するための模式図である。 図17は、ノード間遷移行列の一例を示す図である。 図18は、始点からの距離及び終点からの距離のためのテーブル例を示す図である。 図19は、距離算出処理の処理フローを示す図である。 図20は、ノードのグループ分けの一例を示す図である。 図21は、業務実績フローの一例を示す図である。 図22は、設計フローの一例を示す図である。 図23は、イベントのグループ分けの一例を示す図である。 図24は、距離算出処理の処理結果例を示す図である。 図25は、ノードとイベントの対応付けの一例を示す図である。 図26は、グループ分けの結果を加えて表示する例を示す図である。 図27は、最初にグループ分けの結果を提示する例を示す図である。 図28は、業務実績フローの第2の例を示す図である。 図29は、設計フローの第2の例を示す図である。 図30は、業務実績フローの第2の例に対するグループ分けの一例を示す図である。 図31は、設計フローの第2の例に対する距離算出処理の処理結果を示す図である。 図32は、設計フローの第2の例に対するグループ分けの一例を示す図である。 図33は、ノードのグループ分けとイベントのグループ分けの対比するための図である。 図34は、文字列マッチングをグループ単位で実施した結果の一例を示す図である。 図35は、フロー図同士の対比による、ノード−イベントの対応関係を示す図である。 図36は、グループ分け無しに文字列マッチングを実施した結果の一例を示す図である。 図37は、グループ分け無しに文字列マッチングを実施した結果をフロー図同士の対比で表す場合の例を示す図である。 図38は、コンピュータの機能ブロック図である。
本技術の実施の形態に係るシステム概要を図1を用いて説明する。本実施の形態では、2つのフロー図を比較する場合を例に示す。その際、少なくとも1つのフロー図は、複数のプロセスインスタンス(すなわち業務実績フローの具体例)から把握されるフロー図であるものとする。もう一つのフロー図については、異なる情報(例えばデータベースなど)から得られる複数のプロセスインスタンスから把握されるフロー図であってもよいし、設計図などの他のフロー図であってもよい。
フロー比較処理装置100は、例えばデータベースA及びBといった業務システムにおけるデータベース(又はそのレプリカ)からプロセスインスタンスを生成するプロセスインスタンス生成部101と、プロセスインスタンス生成部101により生成されたプロセスインスタンスのデータを格納するプロセスインスタンスデータ格納部102と、プロセスインスタンスデータ格納部102に格納されているデータを用いて各イベント種別(イベント種又はイベントクラスとも呼ぶ)について業務実績フローの中でどのあたりに出現するのかを特定する処理を実施するイベント所属区間決定処理部103と、イベント所属区間決定処理部103の処理結果を格納するイベント所属区間データ格納部104と、例えばネットワークを介して又は指定された記憶装置等からフロー図のデータを取得するフロー図データ取得部106と、フロー図データ取得部106が取得したフロー図データを格納するフロー図データ格納部107と、フロー図データ格納部107に格納されているデータを用いてフロー図の各ノードが当該フロー図中どのあたりに出現するのかを特定する処理を実施するノード所属区間決定処理部108と、ノード所属区間決定処理部108の処理結果を格納するノード所属区間データ格納部109と、イベント所属区間データ格納部104とノード所属区間データ格納部109とに格納されているデータを用いて表示データ等を生成するなどの処理を実施する表示処理部105と、表示処理部105が生成した表示データを表示する表示装置110と、フロー図データ取得部106と表示処理部105とノード所属区間決定処理部108と連携してユーザからの入力をそれぞれに伝える入力部111と、表示処理部105の処理結果及び入力部111を介して入力されたデータに基づき特定され、業務実績フローに含まれるイベント種別とフロー図に含まれるノードとの対応関係を表すデータを格納する対応関係データ格納部112とを有する。
次に、図1に示したフロー比較処理装置100の処理内容について図2乃至図37を用いて説明する。
まず、プロセスインスタンス生成部101は、データベースA及びBなどの第1のデータベース群に蓄積されているデータから第1のプロセスインスタンス群を生成し、プロセスインスタンスデータ格納部102に格納する(図2:ステップS1)。この処理は、特開2008−27072号公報などにも開示されている周知の処理である。
例えば、図3に模式的に示すが、データベースAにはテーブルa及びbが格納されており、プロセスインスタンス生成部101は、テーブルaからそれぞれ識別子と処理種別と処理時刻とを含む業務レコードを抽出し、同様にテーブルbからそれぞれ識別子と処理種別と処理時刻とを含む業務レコードを抽出する。また、データベースBにはテーブルcが格納されており、テーブルcからそれぞれ識別子と処理種別と処理時刻とを含む業務レコードを抽出する。なお、テーブルa乃至cの1レコードに、識別子と処理種別と処理時刻とのうちいずれかの列が含まれない場合には、プロセスインスタンス生成部101が、例えば処理種別をテーブル名から取得するなどして、図3の右側に示すように、識別子と処理種別と処理時刻とを含む業務レコードを構成して、例えばプロセスインスタンスデータ格納部102に格納する。
そして、プロセスインスタンス生成部101は、プロセスインスタンスデータ格納部102に格納されている業務レコードを、識別子及び処理時刻でソートし、ソート結果をプロセスインスタンスデータ格納部102に格納する。識別子が同じということは、同じ案件についての一連の業務であることを意味しており、識別子で業務レコードをグループ化し、処理時刻で業務レコードをソートすることによって業務の実施の順番を特定する。図3の例では、星印の付いた、識別子がID001の業務レコードでグループ化し、処理時刻を早い順に並べると、図4に示すようなデータが生成され、プロセスインスタンスデータ格納部102に格納される。なお、識別子ID001以外の業務レコードについても同様にグループ化されソートされて、プロセスインスタンスデータ格納部102に格納される。図4に格納された各レコードがイベント(イベントインスタンスとも呼ぶ)であり、時系列に並べられたこれらのレコード群をプロセスインスタンスと呼ぶ。
次に、例えばフロー図データ取得部106がフロー図データの取得を入力部111を介してユーザから指示されているか否か、又は図2で点線で表されているデータベースC及びDのように第2のデータベース群(又はそのレプリカ)が設定又は指定されているか否かによって、第2のデータベース群からプロセスインスタンスを生成するかを特定し、第2のデータベース群からプロセスインスタンスを生成する場合には(ステップS3:Yesルート)、プロセスインスタンス生成部101は、データベースC及びDなどの第2のデータベース群に蓄積されているデータから第2のプロセスインスタンス群を生成し、プロセスインスタンスデータ格納部102に格納する(ステップS5)。処理内容自体はステップS1と同じである。そして処理はステップS9に移行する。
一方、フロー図データを取得する場合には(ステップS3:Noルート)、フロー図データ取得部106は、外部のリソースからフローの構造を表すデータ(例えばフロー図のイメージデータ又はXPDL(XML Process Definition Language。ワークフロー製品間(モデリングエンジンやワークフローエンジン)でビジネスプロセス定義を交換するために定義された標準形式。)などによって記述されたコンピュータ読み取り可能なフロー構造の定義データなど)を取得し、フロー図データ格納部107に格納する(ステップS7)。
ステップS5又はS7の後に、イベント所属区間決定処理部103は、第1のプロセスインスタンス群に対するイベント最頻出現位置評価処理を実施する(ステップS9)。イベント最頻出現位置評価処理については、図5乃至図12を用いて説明する。
まず、イベント所属区間決定処理部103は、プロセスインスタンスデータ格納部102に格納されているプロセスインスタンス群から、未処理のプロセスインスタンスを1つ特定する(図5:ステップS51)。また、特定されたプロセスインスタンスに含まれるイベント数をカウントし、当該カウント値に基づき各イベントの出現位置を算出する(ステップS53)。
例えば、図6に示すように、プロセスインスタンスデータ格納部102には、4種類のプロセスインスタンス、すなわち「見積」->「受注」->「検収」という順番でイベントが発生する第1のプロセスクラスと、「受注」->「取消」という順番でイベントが発生する第2のプロセスクラスと、「見積」->「受注」->「変更」->「受注」->「検収」という順番でイベントが発生する第3のプロセスクラスと、「見積」->「変更」->「見積」->「取消」という順番にイベントが発生する第4のプロセスクラスとが生成されたものとする。なお、図6に示すように、それぞれの実行回数も特定されているものとする。
このような場合、ステップS53では、図7に示すような方法で、出現位置を算出する。すなわち、最初のイベントを位置0%、最後のイベントを位置100%と設定して、その間に発生したイベントの間隔が均等になるように各イベントの位置を決定する。第1のプロセスクラスの場合、図7の第1行目に示すように、最初と最後のイベントの間には受注イベントのみが発生している。従って、間隔は2つであるから、100%/2=50%が受注イベントの位置となる。第2のプロセスクラスの場合、図7の第2行目に示すように、イベントが2つしかないので、位置を決定すべき中間のイベントはない。第3のプロセスクラスの場合、図7の第3行目に示すように、最初と最後のイベントの間には受注イベント、変更イベント及び2回目の受注イベントが発生している。従って、間隔は4つであるから、受注イベントは100%/4*1=25%が出現位置であり、変更イベントは100%/4*2=50%が出現位置であり、2回目の受注イベントは100%/4*3=75%が出現位置である。第4のプロセスクラスの場合、図7の第4行目に示すように最初と最後のイベントの間には変更イベント及び見積イベントが発生している。従って、間隔は3であり、変更イベントは100%/3*1=33.3%が出現位置であり、見積イベントは100%/3*2=66.6%が出現位置である。
なお、度数分布を生成する際には、各イベント種について、各出現位置の回数を、そのプロセスインスタンスの当該実行回数分カウントアップする。
以上のような手順にてステップS51で特定されたプロセスインスタンスに含まれる各イベントの出現位置を算出する。このように各プロセスインスタンスにおいて正規化した形で出現位置を算出するので、粒度の差に起因するフロー図間のノード数又はイベント数の相違の影響を抑えて対比できるようになる。
そして、イベント所属区間決定処理部103は、未処理のイベントを1つ特定し(ステップS55)、イベント名(イベント種又はイベント種別とも呼ぶ)及び出現位置を、イベント所属区間データ格納部104の出現位置管理テーブルに登録する(ステップS57)。出現位置管理テーブルは、例えば図8に示すようなテーブルである。図8の例では、イベント種と出現位置とが登録されるようになっている。ステップS57では、1つのレコードがこのような出現位置管理テーブルに登録される。
そして、イベント所属区間決定処理部103は、全てのイベントを処理したか判断する(ステップS59)。未処理のイベントが存在する場合にはステップS55に戻る。未処理のイベントが存在しない場合には、プロセスインスタンスデータ格納部102に格納されている全てのプロセスインスタンスについて処理したか判断し(ステップS61)、未処理のプロセスインスタンスが存在する場合にはステップS51に戻る。一方、全てのプロセスインスタンスを処理した場合には、端子Bを介して図9の処理に移行する。
図9の処理の説明に移行して、イベント所属区間決定処理部103は、出現位置管理テーブルにおいて未処理のイベント種を1つ特定する(ステップS63)。そして、特定されたイベント種に該当するレコードを、出現位置管理テーブルから抽出し、所定の位置区間毎に出現回数をカウントし、イベント所属区間データ格納部104に格納する(ステップS65)。例えば、図8のような出現位置管理テーブルから、図7でハッチングが付されている「受注」イベントのレコードを抽出すると、図10に示すようなデータが得られる。すなわち、イベント種が全て「受注」で、その出現位置が列挙される。そして、例えば図11に示すように、0%から100%を10区間に均等に分けてそれぞれの区間について、該当件数をカウントする。図10に現れているレコードだけを集計すれば、50%が5回、33.3%が1回、0%が2回で、図11に示されているような分布が得られる。
そして、イベント所属区間決定処理部103は、図11に示されているような分布から、最頻出現区間(一般的には最も出現回数が多い区間であるが、他の統計的な特徴値の区間を採用するようにしても良い。場合によってはユーザに指定させるようにしてもよい。)を特定し、当該最頻出現区間を特定するデータ(区間にIDが振られている場合には、当該区間ID。0以上10未満といったデータであっても良い。)とイベント種とを対応付けてイベント所属区間データ格納部104に格納する(ステップS67)。そして、全てのイベント種について処理したか判断する(ステップS69)。未処理のイベント種が存在する場合にはステップS63に戻る。一方、全てのイベント種について処理した場合には、元の処理に戻る。
以上のような処理を実施すれば、例えば図12に示すように、「見積」イベントは0以上10未満の区間、「受注」イベントは50以上60未満の区間、「変更」イベントは50以上60未満の区間、「検収」イベントは90以上100以下の区間、「取消」イベントは90以上100以下の区間が最頻出現区間として特定される。
図2の説明に戻って、イベント所属区間決定処理部103は、第1のプロセスインスタンス群の各イベント種を最頻出現区間からグループ分けし、グループ分けデータをイベント所属区間データ格納部104に格納する(ステップS11)。例えば、「序盤」「中盤」「終盤」といったように3つのグループに分ける場合には、「0以上10未満」「10以上20未満」「20以上30未満」を最頻出現区間とするイベント種を、序盤グループに属するイベント種として特定する。また、「30以上40未満」「40以上50未満」「50以上60未満」「60以上70未満」を最頻出現区間とするイベント種を、中盤グループに属するイベント種として特定する。図12の例では、図13に示すようなデータが得られるようになる。図13の例では、序盤グループには「見積」イベントが属し、中盤グループには「受注」イベント及び「変更」イベントが属し、終盤グループには「検収」イベント及び「取消」イベントが属する。図13は、以下で述べる表示例でもあり、棒グラフも含まれているが、イベント所属区間データ格納部104には、このような棒グラフを描くためのデータ(図11)が格納されている。処理は、端子Aを介して図14の処理に移行する。
このような処理を実施することによって、出現頻度の低い例外的なフロー経路の影響を抑えて、適切な出現区間及びグループが特定されるようになる。
なお、ステップS9及びS11では、一旦最頻出現区間を特定した後にさらにグループ化するような処理を実施しているが、例えば区間を0以上30未満と30以上70未満と70以上100以下というように3つの区間として初めから定義して、最頻出現区間を特定するようにしてもよい。但し、この場合には、上で述べたステップS9及びS11の処理とは異なる結果が得られる場合もある。いずれを採用するかは任意である。また、区間とグループとが同じ数であれば、ステップS11を実施せずとも良い。
図14の処理の説明に移行して、次に、ステップS5で第2のデータベース群からプロセスインスタンスを生成した場合には(ステップS13:Yesルート)、イベント所属区間決定処理部103は、プロセスインスタンスデータ格納部102に格納されている第2のプロセスインスタンス群に対するイベント最頻出現位置評価処理を実施する(ステップS15)。この処理はステップS9と同じであるから、詳細な説明については省略する。
また、イベント所属区間決定処理部103は、第2のプロセスインスタンス群の各イベント種を最頻出現区間から、第1のプロセスインスタンス群と同一態様でグループ分けし、グループ分けデータを、イベント所属区間データ格納部104に格納する(ステップS17)。この処理についてもステップS11と同じであり、詳細な説明については省略する。なお、グループ分けの態様は第1のプロセスインスタンス群と第2のプロセスインスタンス群で同じでなければならない。処理はステップS25に移行する。
一方、ステップS5でフロー図データを取得してフロー図データ格納部107に格納した場合には(ステップS13:Noルート)、ノード所属区間決定処理部108は、フロー図データ格納部107に格納されているフロー図データから始点及び終点との距離算出処理を実施する(ステップS19)。この距離算出処理については、図15乃至図19を用いて説明する。
ノード所属区間決定処理部108は、入力されたフロー図に始点及び終点が明示されているか判断する(ステップS71)。例えば、コンピュータ読み取り可能な言語で記述されている場合には、「開始」「終了」といった文言の他予め定められたキーワードをノード所属区間決定処理部108に登録しておき、当該キーワードに合致するノードが規定されているか否かによって始点及び終点が明示されているかを判断する。一方、イメージデータなどであっても、OCR(Optical Character Recognition)の技術等で上記のようなキーワードを抽出するようにしてもよい。
入力されたフロー図に始点及び終点が明示されていない場合(実際に明示されていない場合又はノード所属区間決定処理部108が認識できなかった場合)には、ノード所属区間決定処理部108は、例えば始点及び終点の入力をユーザに対して促す表示を表示装置110に対して行い、始点及び終点の入力がなければ(ステップS73:Noルート)、処理不可能を出力して以降の処理を終了する(ステップS87)。なお、始点及び終点が接続されるノードの指定が必要である。
一方、入力部111を介して始点及び終点の入力がなされた場合には(ステップS73:Yesルート)、ノード所属区間決定処理部108は、入力部111から始点及び終点の入力を受け取り、例えばメインメモリなどの記憶装置に格納する(ステップS75)。
ステップS75の後に、又は入力されたフロー図に始点及び終点が明示されている場合には、ノード所属区間決定処理部108は、入力されたフロー図のデータが、フロー構造を自動的に読み取り可能なデータ(例えばXPDL等で記述されたデータ)であるかを判断する(ステップS77)。イメージデータのように正確にフロー構造を読み取れないようなデータでフロー図が入力されている場合には、ノード所属区間決定処理部108は、表示装置110にノードの種類及びノード間の接続間の情報の入力を促す表示を行い、入力部111を介してユーザからの入力データを取得し、例えばメインメモリなどの記憶装置に格納する(ステップS79)。そして、ステップS83に移行する。
入力されたフロー図のデータが、フロー構造を自動的に読み取り可能なデータ(例えばXPDL等で記述されたデータ)である場合には、ノード所属区間決定処理部108は、例えば周知のパーサ機能でフロー図データをパースし、ノードの種類及びノード間の接続関係の情報を抽出する(ステップS81)。このパーサ機能については、XML(eXtensible Markup Language)のパーサの技術を用いれば実現できるのでここではこれ以上述べない。
そして、ノード所属区間決定処理部108は、ノードの種類及びノード間の接続関係から、ノード間遷移を表す隣接行列を生成し、例えばメインメモリなどの記憶装置に格納する(ステップS83)。なお、処理は端子Dを介して図19の処理に移行する。
例えば図16のようなフロー図を想定する。図16のフロー図では、始点である「INITIAL」から「見積」及び「受注」への遷移と、「見積」から「受注」への遷移と、「受注」から「取消」「検収」「変更」への遷移と、「変更」から「受注」への遷移と、「検収」から終点である「FINAL」への遷移と、「取消」から「FINAL」への遷移とが含まれている。このようなノードの種類とノード間の接続関係を、ノード間遷移を表す隣接行列に変換すると、図17に示すような行列となる。行列の中で「0」は、遷移無しを表し、「1」は遷移有りを表す。
そして、ノード所属区間決定処理部108は、ワーシャル・フロイド法などの、有向グラフの最短経路についての周知の解法に従って、各ノードについて、始点からの最短距離及び終点からの最短距離(終点への最短距離と同じ)を算出し、ノード所属区間データ格納部109に格納する(ステップS85)。図16に示すように、例えば「見積」に着目すると、「INITIAL」からの最短距離は「1」であり、「FINAL」からの最短距離は「3」である。また、「受注」に着目すると、「INITIAL」からの最短距離は「1」であり、「FINAL」からの最短距離は「2」である。このような最短距離の計算については、周知の手法にて隣接行列から算出することができ、例えばその計算結果は、例えば図18に示すようなデータとなる。すなわち、各ノードについて、INITIALからの最短距離Aと、FINALからの最短距離B(FINALへの最短距離としても同じ。)とが算出される。なお、図18の例では、後に算出されるB−Aについても計算結果が示されている。
図19の処理の説明に移行して、ノード所属区間決定処理部108は、未処理のノードを1つ特定し(ステップS87)、特定されたノードについて、終点からの最短距離から始点からの最短距離を引くことによって差分値(距離差とも呼ぶ)を算出し、ノード所属区間データ格納部109に格納する(ステップS89)。図18に示したように、B−Aを算出して、登録する。なお、差分値が大きいほどINITIALに近く、差分値が小さければFINALに近いので、始点又は終点にどの程度寄っているのかの指標として算出している。そして、未処理のノードが存在するか判断し(ステップS91)、未処理のノードが存在すればステップS87に戻り、未処理のノードが存在しなければ元の処理に戻る。
このような処理を実施することによって、フロー図が与えられた場合にも、以下で行われるノードのグループ分けのベースとなるデータが得られるようになる。
図14の説明に戻って、ノード所属区間決定処理部108は、算出された差分値に基づき、各ノードをプロセスインスタンスのグループと同一数のグループにグループ分けし、グループ分けデータをノード所属区間データ格納部109に格納する(ステップS23)。図18に示すようなデータを得た場合には、例えば差分値xが1より大きく2以下であれば序盤グループとし、差分値xが1以下で0より大きい場合には中盤グループとし、差分値xが0以下で−1以上の場合には終盤グループと定義して、各ノードの差分値に基づきいずれのグループに属するかを判断する。図18の例では、図20に示すように、序盤グループには「見積」が含まれ、中盤グループには「受注」及び「変更」が含まれ、終盤グループには「取消」及び「検収」が含まれる。グループについての閾値は、ノード数や差分値の範囲(最高値と最小値との差)などから予め決定して設定しておく。
そしてステップS17又はS23の後に、表示処理部105は、イベント−ノードの対応付けのための表示を実施すると共に、ユーザからの入力を入力部111を介して受け付け、イベント−ノードの対応関係データを、対応関係データ格納部112に格納する(ステップS25)。ステップS25の具体的な実施方法は様々なバリエーションが考えられる。
[ステップS25の第1の具体例]
例えば、プロセスインスタンスを生成してそれらを重ね合わせた場合に図21に示すような第1のフロー(業務実績フロー)が得られ、また図22に示すようなフロー図が第2のフロー(設計フロー)として入力された場合を考える。この場合、第1のフローの場合、上で述べた処理を実施すると、図23に示すようなグループ分けがなされる。具体的には、序盤グループに属するイベント種には、「受注履歴.オーダ発行」「発注履歴.見積依頼」「受注履歴.見積書発行」「受注履歴.見積」「受注履歴.注文書発行」が含まれる。また、中盤グループに属するイベント種には、「発注履歴.発注」「発注履歴.検査」「受注履歴.注文書受領」「受注履歴.請求」「発注履歴.検収」「発注履歴.受注」「仕入履歴.仕入計上」が含まれる。また、終盤グループに属するイベント種には、「受注履歴.完了」「売上履歴.売上計上」「仕入履歴.支払」「受注履歴.検収」が含まれる。このようなデータが、イベント所属区間データ格納部104に格納されている。
また第2のフローの場合、上で述べた処理を実施すると、図24に示すように、各ノードが序盤グループ、中盤グループ及び終盤グループに分類される。具体的には、序盤グループに属するノードには、「販売_オーダ登録」「販売_見積」「購買_発注計画」「購買_見積」が含まれる。また、中盤グループに属するノードには、「販売_受注」「購買_発注依頼・注文・契約」「購買_納品・検収」「販売_報告・検収」が含まれる。さらに、終盤グループに属するノードには、「購買_支払」「購買_完了」「購買_解約」「購買_取消」「販売_売上」「販売_解約」「販売_完了」が含まれる。このようなデータが、ノード所属区間データ格納部109に格納されている。
そして、第1の具体例では、ユーザが外部資料に基づき自ら対応関係を入力部111を介して入力する。対応関係は例えば図25に示すようなものである。対応関係がつけられないものもあれば、1対多の対応関係となっているものもある。ここで、このような対応関係データの入力を受け付けた表示処理部105は、このような対応関係データを例えばメインメモリなどの記憶装置に格納すると共に、各ノード及び各イベントについていずれのグループに属するかについてのデータを読み出して、ユーザに対してユーザの対応付けが適切であるかの確認を求める。例えば図26のような表示を行う。図26の例では、ユーザに指示された対応関係を維持しつつ、左横に序盤、中盤又は終盤のいずれであるかを示すようにしている。そして、ユーザは、例えば、同じグループ同士が対応付けられている場合には、特に問題がないと判断し、異なるグループが対応付けられている部分についてその妥当性について判断する。そして、序盤のイベントと終盤のノードが対応付けられている場合には、見直しが必要な場合もある。
ユーザは、図26のような表示を参考にして、対応付けを再確認して、問題がなければ入力部111を介して登録を指示する。そうすると、図25に示したような対応関係データが対応関係データ格納部112に格納されるようになる。一方、修正が必要であれば、修正の入力を入力部111を介して行い、修正後の対応関係データを対応関係データ格納部112に格納する。
このように、先にユーザに対応関係データを入力してもらった後に、入力が正しいか否かを判断する1つの要素として、イベント所属区間データ格納部104及びノード所属区間データ格納部109に格納されているデータを用いる。図13のようなグラフを提示したり、図24のようなデータを表示するようにしてもよい。
[ステップS25の第2の具体例]
第1の具体例とは逆に、例えば図27に示すように、先に、序盤グループに属するイベント及びノードを対応付けて列挙し、中盤グループに属するイベント及びノードを対応付けて列挙し、終盤グループに属するイベント及びノードを対応付けて列挙する。このようなグループ単位の対応関係データと外部資料をベースに、ユーザが実際に対応付けるべきイベント及びノードを入力部111を介して入力する。
このようにイベント所属区間データ格納部104及びノード所属区間データ格納部109に格納されているデータをグループ単位でまとめて提示した上で、そのようなデータ等を基に対応関係データを入力してもらうようにしても良い。
また、図27のイベントをボタン化して、クリックされた場合などには図13に示すような棒グラフを表示するようにしても良い。また、他にボタンを設けて、例えばユーザからの指示に応じて第1及び第2のフロー図を表示するようにしてもよい。他にもイベント所属区間データ格納部104及びノード所属区間データ格納部109に格納されているデータを表示するようにしても良い。
[ステップS25の第3の具体例]
ここでは図28に示す第1のフロー(業務実績フロー)及び図29に示す第2のフロー(設計フロー)を用いて説明する。上で述べたイベント所属区間決定処理部103による処理を実施すれば、図30に示すようなイベントのグループ分けが特定されるものとする。すなわち、序盤グループには、「部品製造1」「部品製造2」「組立1」「検査1」が含まれ、中盤グループには、「部品製造3」「組立2」が含まれ、終盤グループには、「検査2」「修理1」「出荷1」が含まれる。また、ノード所属区間決定処理部108による処理を実施すれば、図31に示すような各ノードについての差分値(終点からの距離−始点からの距離=距離差)が算出され、図32に示すようなグループ分けが特定されるものとする。図31に示すように、差分値は−5以上3以下という範囲になっており、上で述べた例とは異なり、図32に示すように例えば3以下で0.34を上回る場合には序盤グループに分類され、0.34以下で−2.22を上回る場合には中盤グループに分類され、−2.22以下で−5以上である場合には終盤グループに分類される。すなわち、序盤グループには「基板製造」「基板検査」が含まれ、中盤グループには「基板修理」「ケース製造」「組立」が含まれ、終盤グループには「全体検査」「廃棄」「全体修理」「出荷」が含まれる。
そして、イベント所属区間データ格納部104及びノード所属区間データ格納部109に格納されているグループ分けデータから図33に示すようなグループ毎の対応付けができるようになる。この段階で、表示処理部105が同じグループ内において設計フローについてのノードと業務実績フローのイベントとの対応付けを、周知の文字列マッチングを行うことによって実施する。すなわち、より多くの文字が一致するノード名及びイベント名を対応付ける。そうすると、図34に示すようなデータが得られる。すなわち、「基板製造」ノードは「部品製造1」及び「部品製造2」イベントに対応付けられ、「基板検査」ノードは「検査1」イベントに対応付けられ、「ケース製造」ノードは「部品製造3」イベントに対応付けられ、「組立」ノードは「組立2」イベントに対応付けられ、「全体検査」ノードには「検査2」イベントが対応付けられ、「全体修理」ノードには「修理1」イベントが対応付けられ、「出荷」ノードには「出荷1」イベントが対応付けられる。その他のノード又はイベントについては対応付けができない。例えば表示処理部105が、図34に示すようなデータを生成して、表示装置110を用いてユーザに提示し、ユーザは外部資料などを参照して図34に示すような対応関係の妥当性を判断する。もし修正が必要であれば修正内容を入力部111を介して入力し、表示処理部105は、修正後の対応関係データを対応関係データ格納部112に格納する。修正がなければ、登録指示を入力部111を介して入力し、表示処理部105は、図34の内容を対応関係データ格納部112に格納する。
また、図34のようなテーブルを表示するのではなく、例えば図35に示すようにフロー図を併置してノード−イベントの対応付けを図示するようにしても良い。対応関係については図34に示したものと同様であるが、図35において対応関係については点線で示している。点線ではなくそれぞれを識別可能な色で線を示すようにしても良い。図35のような表示を行うようにすれば、フロー中のどのあたりのノードとイベントが対応付けられているのかを容易に把握できるようになる。従って、修正すべき部分も特定することができる。なお、図35の例では、対応付けを表す点線はあまり傾くことなく水平に近い形で伸びており、フロー中の位置関係が考慮された上での対応付けであることが分かる。
また、図30乃至図32のようなデータを例えばユーザからの要求に応じて表示するようにしても良い。
一方、上で述べたようなグループ分けを用いずに設計フローのノードと業務実績フローのイベントとを単純な文字列マッチングにて対応付けてしまうと、フロー上では対応付けるべきでないようなノードとイベントが対応付けられてしまう。その様子を図36に示す。「基板製造」ノード及び「ケース製造」ノードは、「部品製造1」イベント、「部品製造2」イベント及び「部品製造3」イベントのいずれと対応するのかが不明である。これはそもそもが1:n(nは2以上の整数)なのか文字列マッチングにおける曖昧さを反映して1:nなのかを区別できないという問題を示している。また、「組立」ノードと「組立1」イベント及び「組立2」イベントとの対応関係や、「基板修理」ノード及び「全体修理」ノードと「修理1」イベントとの対応付けについても同様である。文字列マッチングだけでは、「基板検査」ノード及び「全体検査」ノードと「検査1」イベント及び「検査2」イベントとの対応付けも不明確であるが、ここではフロー上の前後関係から図36に示すように、「基板検査」ノードと「検査1」イベントとを対応付け、「全体検査」ノードと「検査2」イベントとを対応付けている。このようなルールを導入しても先に文字列マッチングを実施すると曖昧さが残ってしまう。また、数多くのノードとイベントとのマッチングを算出しなければならないので、マッチングのための計算コストも多く掛かってしまう。
従って、図35のようにフロー図同士を併置して対比する場合には図37に示すような図になってしまう。図35と比較すれば、煩雑に対応付けの点線が交差していることが分かる。特に、斜めに傾いてノードとイベントを繋いでいる点線もあり、対応付けがフロー中の位置関係からして不適切であるということも分かる。
このように上で述べたグループ分けの結果を用いることによって、対応付けの精度が向上し、ユーザの対応付け修正の手間を削減することができるようになる。
以上本技術の本実施の形態について説明したが、本技術はこれに限定されるものではない。例えば図1に示した機能ブロック図は一例であって必ずしも実際のプログラムモジュール構成と一致しない場合もある。
さらに処理フローについても処理結果が変わらない限りにおいて処理順番を変更したり並列実行するようにしても良い。
また、スタンドアロン型の実施の形態を説明したが、クライアント・サーバ型に変形することも可能である。すなわち、ネットワークに接続されており表示装置や入力装置を有するユーザ端末とのデータのやりとりによって、ユーザ端末とのインターフェース部を表示装置110や入力部111の代わりに有するフロー比較処理装置100が処理するような構成である。
画面表示内容についても様々な変形が可能であり、上で述べたものに限定されるものではなく、同様の内容を表示できれば他の形態に変形して表示するようにしても良い。また、他の情報を付加的に表示したり、1度に表示する情報の内容を絞り込んでも良い。
なお、上で述べたフロー比較処理装置100は、コンピュータ装置であって、図38に示すように、メモリ2501とCPU2503とハードディスク・ドライブ(HDD)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS:Operating System)及び本実施例における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。必要に応じてCPU2503は、表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、必要な動作を行わせる。また、処理途中のデータについては、メモリ2501に格納され、必要があればHDD2505に格納される。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及び必要なアプリケーション・プログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
以上本実施の形態をまとめると以下のようになる。
本フロー比較処理方法は、複数のイベントが時系列に並べられた複数のプロセスインスタンスのデータを第1のフローデータとして格納する第1フローデータ格納部に格納されている各プロセスインスタンスについて、当該プロセスインスタンス内における各イベントの出現位置を当該プロセスインスタンス内のイベントの出現回数に基づき決定し、各イベントに対応付けて出現位置を第1データ格納部に格納するステップと、第1データ格納部から、イベント種別毎にイベントのデータを抽出し、当該イベント種別に属する各イベントの出現位置が、予め定められた複数の位置区間のいずれに属するか判断すると共に、イベント種別毎に当該イベント種別の最頻出現位置区間を特定し、予め定められた複数のグループのうち最頻出現位置区間が属する最頻出現グループとイベント種別とを対応付けて第2データ格納部に格納するステップと、第1のフローデータとは異なり且つ第1のフローデータと対比される第2のフローデータに含まれる各ノードと複数のグループと同一数の区分けがなされている複数の出現位置区間のうち当該ノードの出現位置区間とを対応付けて格納している第2フローデータ格納部に格納されている、第2のフローデータに含まれる各ノードと当該ノードの出現位置区間とを関連付けて表示すると共に、第2データ格納部に格納されている、イベントの種類と当該イベントの種類の最頻出現グループとを関連付けて表示する表示ステップとを含む。
例えば、第1のフローデータに係るイベント種別の最頻出現グループと第2のフローデータに係るノードの出現位置区間とが同じであるということを目安にして、どのイベント種別とどのノードとが対応するものなのかを容易に判断できるようになる。なお、第2のフローデータについては、設計図のようなものであってもよいし、第1のフローデータと同じように複数のプロセスインスタンスから特定されるものであっても良い。また、第2フローデータ格納部に格納されるデータについては、自動的に生成する場合もあれば、予め手動にて作成したデータが格納される場合もある。また、グループと位置区間が同じ場合もある。
さらに、上で述べたような統計的な処理によって低頻度の例外的なプロセスインスタンスの影響を抑えて出現位置区間、そして最頻出現グループを特定できるようになる。さらに、プロセスインスタンス内における各イベントの出現位置を当該プロセスインスタンス内のイベントの出現回数に基づき決定するようにしているので、出現位置がプロセスインスタンス内において正規化されて特定され、比較対象フローとノードの粒度が異なる場合でもフロー全体における出現位置という同じ基準で比較が可能となる。
また、第2のフローデータが始点及び終点を含む複数のノードと当該ノード間の接続関係とで表されるようなものであってもよい。その場合には、第2フローデータ格納部に格納されている第2のフローデータについての複数のノードのデータとノード間の接続関係とから、始点及び終点を除き各ノードについて、始点からの最短距離と終点からの最短距離とを算出し、距離データ格納部に格納するステップと、距離データ格納部に格納されている終点からの最短距離と始点からの最短距離との差を各ノードについて算出し、予め定められた閾値に従って、各ノードについて出現位置区間を特定し、第2フローデータ格納部に格納するステップとをさらに含むようにしてもよい。例えば、第2のフローデータが例えば適切な記述言語によって規定されている場合には、自動的に複数のノードとノード間の接続関係とを特定できるので、上で述べた処理にて自動的に各ノードについて出現位置区間を特定できるようになる。
さらに、上で述べた表示ステップが、第1のフローデータについて、グループ毎に当該グループを最頻出現グループとするイベント種別を列挙すると共に、第2のフローデータについて、出現位置区間毎に当該出現位置区間に対応付けられているノードを列挙する表示を行うステップを含むようにしてもよい。さらに、本フロー比較処理方法が、第1のフローデータのイベント種別と、第2のフローデータのノードとを対応付ける入力を受け付け、対応関係データとして対応関係データ格納部に格納するステップをさらに含むようにしてもよい。このように、グループ毎に所属のイベント種別を示して、出現位置区間毎に所属のノードを示すことにより、ユーザは対応関係を特定しやすくなる。
また、上で述べた表示ステップが、第1のフローデータについてのグループ毎に、当該グループを最頻出現グループとするイベント種別の名称と、当該グループに対応する、第2のフローデータについての出現位置区間が対応付けられているノードの名称との類似度を算出し、最も類似度が高いイベント種別の名称とノードの名称とを関連付けて表示するステップをさらに含むようにしても良い。このように対応する区間内においてイベント種別の名称とノードの名称との類似度を算出することによって、対応関係を精度良く特定してユーザに提示できるようになる。
さらに、上で述べた表示ステップが、第1のフローデータのイベント種別と、第2のフローデータのノードとを対応付ける入力を受け付け、対応付けられたイベント種別とノードとの対応関係データを対応関係データ格納部に格納するステップと、対応関係データ格納部に格納されている対応関係データと共に、イベント種別について第2データ格納部に格納されている最頻出現グループと、第2フローデータ格納部においてノードに対応付けられている出現位置区間とを対比可能な態様で表示するステップとを含むようにしても良い。例えば、何らかの外部データに基づきユーザが指定した対応関係が、上で述べた処理で特定された最頻出現グループと出現位置区間との関係において適切か否かを判断できるようになる。
また、第2フローデータ格納部が、複数のイベントが時系列に並べられた第2の種類の複数のプロセスインスタンスのデータを第2のフローデータとして格納するようにしてもよい。その場合には、本フロー比較処理方法は、第2フローデータ格納部に格納されている第2の種類の各プロセスインスタンスについて、当該第2の種類のプロセスインスタンス内における各イベントの出現位置を当該第2の種類のプロセスインスタンス内のイベントの出現回数に基づき決定し、各イベントに対応付けて出現位置を第2フローデータ格納部に格納するステップと、第2フローデータ格納部から、イベント種別毎にイベントのデータを抽出し、当該イベント種別に属する各イベントの出現位置が、複数の位置区間のいずれに属するか判断すると共に、イベント種別毎に当該イベント種別の最頻出現位置区間を特定し、複数のグループのうち最頻出現位置区間が属するグループを第2のフローデータについての出現位置区間として、イベント種別を第2のフローデータのノードとして、第2フローデータ格納部に格納するステップとをさらに含むようにしても良い。このように、第2のフローデータについてもプロセスインスタンスの集合から特定されるものであっても、問題なく第1のフローデータと第2のフローデータを対比することができる。
なお、上で述べたような処理を通信装置に実施させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブル・ディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。なお、処理途中のデータについては、コンピュータのメモリ等の記憶装置に一時保管される。
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
複数のイベントが時系列に並べられた複数のプロセスインスタンスのデータを第1のフローデータとして格納する第1フローデータ格納部に格納されている各前記プロセスインスタンスについて、当該プロセスインスタンス内における各イベントの出現位置を当該プロセスインスタンス内のイベントの出現回数に基づき決定し、各イベントに対応付けて出現位置を第1データ格納部に格納するステップと、
前記第1データ格納部から、イベント種別毎に前記イベントのデータを抽出し、当該イベント種別に属する各前記イベントの出現位置が、予め定められた複数の位置区間のいずれに属するか判断すると共に、前記イベント種別毎に当該イベント種別の最頻出現位置区間を特定し、予め定められた複数のグループのうち前記最頻出現位置区間が属する最頻出現グループと前記イベント種別とを対応付けて第2データ格納部に格納するステップと、
前記第1のフローデータとは異なり且つ前記第1のフローデータと対比される第2のフローデータに含まれる各ノードと前記複数のグループと同一数の区分けがなされている複数の出現位置区間のうち当該ノードの出現位置区間とを対応付けて格納している第2フローデータ格納部に格納されている、前記第2のフローデータに含まれる各ノードと当該ノードの出現位置区間とを関連付けて表示すると共に、前記第2データ格納部に格納されている、前記イベントの種類と当該イベントの種類の前記最頻出現グループとを関連付けて表示する表示ステップと、
を含み、コンピュータに実行させるためのフロー比較処理方法。
(付記2)
前記第2のフローデータが始点及び終点を含む複数のノードと当該ノード間の接続関係とで表され、
前記第2フローデータ格納部に格納されている前記第2のフローデータについての前記複数のノードのデータと前記ノード間の接続関係とから、前記始点及び終点を除き各前記ノードについて、前記始点からの最短距離と前記終点からの最短距離とを算出し、距離データ格納部に格納するステップと、
前記距離データ格納部に格納されている前記終点からの最短距離と前記始点からの最短距離との差を各前記ノードについて算出し、予め定められた閾値に従って、各前記ノードについて前記出現位置区間を特定し、前記第2フローデータ格納部に格納するステップと、
をさらに含む付記1記載のフロー比較処理方法。
(付記3)
前記表示ステップが、
前記第1のフローデータについて、前記グループ毎に当該グループを最頻出現グループとする前記イベント種別を列挙すると共に、前記第2のフローデータについて、前記出現位置区間毎に当該出現位置区間に対応付けられている前記ノードを列挙する表示を行うステップ
を含み、
前記第1のフローデータの前記イベント種別と、前記第2のフローデータの前記ノードとを対応付ける入力を受け付け、対応関係データとして対応関係データ格納部に格納するステップ
をさらに含む付記1又は2記載のフロー比較処理方法。
(付記4)
前記表示ステップが、
前記第1のフローデータについての前記グループ毎に、当該グループを最頻出現グループとする前記イベント種別の名称と、当該グループに対応する、前記第2のフローデータについての前記出現位置区間が対応付けられている前記ノードの名称との類似度を算出し、最も類似度が高い前記イベント種別の名称と前記ノードの名称とを関連付けて表示するステップ
を含む付記1又は2記載のフロー比較処理方法。
(付記5)
前記表示ステップが、
前記第1のフローデータの前記イベント種別と、前記第2のフローデータの前記ノードとを対応付ける入力を受け付け、対応付けられた前記イベント種別と前記ノードとの対応関係データを対応関係データ格納部に格納するステップと、
前記対応関係データ格納部に格納されている前記対応関係データと共に、前記イベント種別について前記第2データ格納部に格納されている前記最頻出現グループと、前記第2フローデータ格納部において前記ノードに対応付けられている前記出現位置区間とを対比可能な態様で表示するステップと、
を含む付記1又は2記載のフロー比較処理方法。
(付記6)
前記第2フローデータ格納部が、複数のイベントが時系列に並べられた第2の種類の複数のプロセスインスタンスのデータを第2のフローデータとして格納しており、
前記第2フローデータ格納部に格納されている前記第2の種類の各前記プロセスインスタンスについて、当該第2の種類のプロセスインスタンス内における各前記イベントの出現位置を当該第2の種類のプロセスインスタンス内のイベントの出現回数に基づき決定し、各前記イベントに対応付けて出現位置を前記第2フローデータ格納部に格納するステップと、
前記第2フローデータ格納部から、前記イベント種別毎にイベントのデータを抽出し、当該イベント種別に属する各イベントの出現位置が、前記複数の位置区間のいずれに属するか判断すると共に、前記イベント種別毎に当該イベント種別の最頻出現位置区間を特定し、前記複数のグループのうち前記最頻出現位置区間が属するグループを前記第2のフローデータについての前記出現位置区間として、前記イベント種別を前記第2のフローデータのノードとして、前記第2フローデータ格納部に格納するステップと、
をさらに含む付記1記載のフロー比較処理方法。
(付記7)
付記1乃至6記載のフロー比較処理方法をコンピュータに実行させるためのプログラム。
(付記8)
複数のイベントが時系列に並べられた複数のプロセスインスタンスのデータを第1のフローデータとして格納する第1フローデータ格納部と、
前記第1フローデータ格納部に格納されている各前記プロセスインスタンスについて、当該プロセスインスタンス内における各イベントの出現位置を当該プロセスインスタンス内のイベントの出現回数に基づき決定し、各イベントに対応付けて出現位置を第1データ格納部に格納する手段と、
前記第1データ格納部から、イベント種別毎に前記イベントのデータを抽出し、当該イベント種別に属する各前記イベントの出現位置が、予め定められた複数の位置区間のいずれに属するか判断すると共に、前記イベント種別毎に当該イベント種別の最頻出現位置区間を特定し、予め定められた複数のグループのうち前記最頻出現位置区間が属する最頻出現グループと前記イベント種別とを対応付けて第2データ格納部に格納する手段と、
前記第1のフローデータとは異なり且つ前記第1のフローデータと対比される第2のフローデータに含まれる各ノードと前記複数のグループと同一数の区分けがなされている複数の出現位置区間のうち当該ノードの出現位置区間とを対応付けて格納している第2フローデータ格納部に格納されている、前記第2のフローデータに含まれる各ノードと当該ノードの出現位置区間とを関連付けて表示すると共に、前記第2データ格納部に格納されている、前記イベントの種類と当該イベントの種類の前記最頻出現グループとを関連付けて表示する表示手段と、
を有するフロー比較処理装置。
101 プロセスインスタンス生成部 102 プロセスインスタンスデータ格納部
103 イベント所属区間決定処理部 104 イベント所属区間データ格納部
105 表示処理部 106 フロー図データ取得部
107 フロー図データ格納部 108 ノード所属区間決定処理部
109 ノード所属区間データ格納部 110 表示装置
111 入力部 112 対応関係データ格納部

Claims (7)

  1. 複数のイベントが時系列に並べられた複数のプロセスインスタンスのデータを第1のフローデータとして格納する第1フローデータ格納部に格納されている各前記プロセスインスタンスについて、当該プロセスインスタンス内における各イベントの出現位置を当該プロセスインスタンス内のイベントの出現回数に基づき決定し、各イベントに対応付けて出現位置を第1データ格納部に格納するステップと、
    前記第1データ格納部から、イベント種別毎に前記イベントのデータを抽出し、当該イベント種別に属する各前記イベントの出現位置が、予め定められた複数の位置区間のいずれに属するか判断すると共に、前記イベント種別毎に当該イベント種別の最頻出現位置区間を特定し、予め定められた複数のグループのうち前記最頻出現位置区間が属する最頻出現グループと前記イベント種別とを対応付けて第2データ格納部に格納するステップと、
    前記第1のフローデータとは異なり且つ前記第1のフローデータと対比される第2のフローデータに含まれる各ノードと前記複数のグループと同一数の区分けがなされている複数の出現位置区間のうち当該ノードの出現位置区間とを対応付けて格納している第2フローデータ格納部に格納されている、前記第2のフローデータに含まれる各ノードと当該ノードの出現位置区間とを関連付けて表示すると共に、前記第2データ格納部に格納されている、前記イベントの種類と当該イベントの種類の前記最頻出現グループとを関連付けて表示する表示ステップと、
    を含み、コンピュータに実行させるためのフロー比較処理方法。
  2. 前記第2のフローデータが始点及び終点を含む複数のノードと当該ノード間の接続関係とで表され、
    前記第2フローデータ格納部に格納されている前記第2のフローデータについての前記複数のノードのデータと前記ノード間の接続関係とから、前記始点及び終点を除き各前記ノードについて、前記始点からの最短距離と前記終点からの最短距離とを算出し、距離データ格納部に格納するステップと、
    前記距離データ格納部に格納されている前記終点からの最短距離と前記始点からの最短距離との差を各前記ノードについて算出し、予め定められた閾値に従って、各前記ノードについて前記出現位置区間を特定し、前記第2フローデータ格納部に格納するステップと、
    をさらに含む請求項1記載のフロー比較処理方法。
  3. 前記表示ステップが、
    前記第1のフローデータについて、前記グループ毎に当該グループを最頻出現グループとする前記イベント種別を列挙すると共に、前記第2のフローデータについて、前記出現位置区間毎に当該出現位置区間に対応付けられている前記ノードを列挙する表示を行うステップ
    を含み、
    前記第1のフローデータの前記イベント種別と、前記第2のフローデータの前記ノードとを対応付ける入力を受け付け、対応関係データとして対応関係データ格納部に格納するステップ
    をさらに含む請求項1又は2記載のフロー比較処理方法。
  4. 前記表示ステップが、
    前記第1のフローデータについての前記グループ毎に、当該グループを最頻出現グループとする前記イベント種別の名称と、当該グループに対応する、前記第2のフローデータについての前記出現位置区間が対応付けられている前記ノードの名称との類似度を算出し、最も類似度が高い前記イベント種別の名称と前記ノードの名称とを関連付けて表示するステップ
    を含む請求項1又は2記載のフロー比較処理方法。
  5. 前記表示ステップが、
    前記第1のフローデータの前記イベント種別と、前記第2のフローデータの前記ノードとを対応付ける入力を受け付け、対応付けられた前記イベント種別と前記ノードとの対応関係データを対応関係データ格納部に格納するステップと、
    前記対応関係データ格納部に格納されている前記対応関係データと共に、前記イベント種別について前記第2データ格納部に格納されている前記最頻出現グループと、前記第2フローデータ格納部において前記ノードに対応付けられている前記出現位置区間とを対比可能な態様で表示するステップと、
    を含む請求項1又は2記載のフロー比較処理方法。
  6. 請求項1乃至5記載のフロー比較処理方法をコンピュータに実行させるためのプログラム。
  7. 複数のイベントが時系列に並べられた複数のプロセスインスタンスのデータを第1のフローデータとして格納する第1フローデータ格納部と、
    前記第1フローデータ格納部に格納されている各前記プロセスインスタンスについて、当該プロセスインスタンス内における各イベントの出現位置を当該プロセスインスタンス内のイベントの出現回数に基づき決定し、各イベントに対応付けて出現位置を第1データ格納部に格納する手段と、
    前記第1データ格納部から、イベント種別毎に前記イベントのデータを抽出し、当該イベント種別に属する各前記イベントの出現位置が、予め定められた複数の位置区間のいずれに属するか判断すると共に、前記イベント種別毎に当該イベント種別の最頻出現位置区間を特定し、予め定められた複数のグループのうち前記最頻出現位置区間が属する最頻出現グループと前記イベント種別とを対応付けて第2データ格納部に格納する手段と、
    前記第1のフローデータとは異なり且つ前記第1のフローデータと対比される第2のフローデータに含まれる各ノードと前記複数のグループと同一数の区分けがなされている複数の出現位置区間のうち当該ノードの出現位置区間とを対応付けて格納している第2フローデータ格納部に格納されている、前記第2のフローデータに含まれる各ノードと当該ノードの出現位置区間とを関連付けて表示すると共に、前記第2データ格納部に格納されている、前記イベントの種類と当該イベントの種類の前記最頻出現グループとを関連付けて表示する表示手段と、
    を有するフロー比較処理装置。
JP2009056190A 2009-03-10 2009-03-10 フロー比較処理方法及び装置 Active JP5251623B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009056190A JP5251623B2 (ja) 2009-03-10 2009-03-10 フロー比較処理方法及び装置
US12/692,590 US20100235296A1 (en) 2009-03-10 2010-01-23 Flow comparison processing method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009056190A JP5251623B2 (ja) 2009-03-10 2009-03-10 フロー比較処理方法及び装置

Publications (2)

Publication Number Publication Date
JP2010211457A JP2010211457A (ja) 2010-09-24
JP5251623B2 true JP5251623B2 (ja) 2013-07-31

Family

ID=42731474

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009056190A Active JP5251623B2 (ja) 2009-03-10 2009-03-10 フロー比較処理方法及び装置

Country Status (2)

Country Link
US (1) US20100235296A1 (ja)
JP (1) JP5251623B2 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007132547A1 (ja) * 2006-05-16 2007-11-22 Fujitsu Limited 業務モデル生成プログラム、業務モデル生成方法および業務モデル生成装置
US8943045B2 (en) * 2009-01-28 2015-01-27 Oracle International Corporation Mechanisms for efficient autocompletion in XML search applications
JP5533222B2 (ja) * 2010-05-12 2014-06-25 富士通株式会社 フロー図比較プログラム、フロー図比較方法およびフロー図比較装置
US10235649B1 (en) 2014-03-14 2019-03-19 Walmart Apollo, Llc Customer analytics data model
EP3047371A4 (en) * 2013-09-16 2017-05-17 Metanautix Inc. Data flow exploration
US10235687B1 (en) * 2014-03-14 2019-03-19 Walmart Apollo, Llc Shortest distance to store
US10346769B1 (en) 2014-03-14 2019-07-09 Walmart Apollo, Llc System and method for dynamic attribute table
US10565538B1 (en) 2014-03-14 2020-02-18 Walmart Apollo, Llc Customer attribute exemption
US10733555B1 (en) 2014-03-14 2020-08-04 Walmart Apollo, Llc Workflow coordinator
JP6270638B2 (ja) * 2014-06-09 2018-01-31 株式会社日立製作所 有向グラフ可視化装置および有向グラフ可視化方法
US10169433B2 (en) 2014-07-29 2019-01-01 Microsoft Technology Licensing, Llc Systems and methods for an SQL-driven distributed operating system
US10176236B2 (en) 2014-07-29 2019-01-08 Microsoft Technology Licensing, Llc Systems and methods for a distributed query execution engine
US10437843B2 (en) 2014-07-29 2019-10-08 Microsoft Technology Licensing, Llc Optimization of database queries via transformations of computation graph
JP2017045080A (ja) * 2015-08-24 2017-03-02 株式会社日立製作所 業務フロー仕様再生方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004334430A (ja) * 2003-05-06 2004-11-25 Nippon Telegr & Teleph Corp <Ntt> ワークフロー統計情報処理方法、ワークフロー統計情報処理システム、ワークフロー統計情報処理プログラムおよび同プログラムを記憶した記憶媒体
JP3867858B2 (ja) * 2003-12-22 2007-01-17 富士ゼロックス株式会社 ワークフロー支援システム
US20070055558A1 (en) * 2005-08-19 2007-03-08 Shanahan James G Method and apparatus for probabilistic workflow mining
WO2007132547A1 (ja) * 2006-05-16 2007-11-22 Fujitsu Limited 業務モデル生成プログラム、業務モデル生成方法および業務モデル生成装置
JP4997856B2 (ja) * 2006-07-19 2012-08-08 富士通株式会社 データベース分析プログラム、データベース分析装置、データベース分析方法
JP5038667B2 (ja) * 2006-09-08 2012-10-03 株式会社日立製作所 業務効率化評価方法および業務効率化評価プログラム
JP4943240B2 (ja) * 2007-06-14 2012-05-30 株式会社日立製作所 ビジネスプロセス作成方法、ビジネスプロセス作成装置、及びビジネスプロセス作成プログラム
US8868386B2 (en) * 2008-02-29 2014-10-21 Sap Se Navigation in simulated workflows

Also Published As

Publication number Publication date
US20100235296A1 (en) 2010-09-16
JP2010211457A (ja) 2010-09-24

Similar Documents

Publication Publication Date Title
JP5251623B2 (ja) フロー比較処理方法及び装置
CN108256074B (zh) 校验处理的方法、装置、电子设备和存储介质
EP2527991B1 (en) Analysis method, analysis device, and analysis program
US20080312992A1 (en) Automatic business process creation method using past business process resources and existing business process
US9672490B2 (en) Procurement system
EP3418910A1 (en) Big data-based method and device for calculating relationship between development objects
CN110928772A (zh) 一种测试方法及装置
JP2008134705A (ja) データ処理方法及びデータ分析装置
CN111553137B (zh) 报告生成方法、装置、存储介质及计算机设备
CN111260413A (zh) 一种基于矢量图形的电力主网工程施工图造价速算方法
JP2012003497A (ja) 障害原因推定装置、障害原因推定プログラム及び障害原因推定方法
CN111143359A (zh) 查询语句生成方法及装置
CN112800755A (zh) 一种数据治理方法及系统
CN114253939A (zh) 一种数据模型的构建方法、装置、电子设备及存储介质
JP4973738B2 (ja) 業務フロー処理プログラム、方法及び装置
JP5316216B2 (ja) 対応付け処理方法及びフロー比較処理装置
CN114860305A (zh) 数据处理方法和装置
JP6695847B2 (ja) ソフトウェア部品管理システム、計算機
JP2010128870A (ja) データ処理装置
CN112560952A (zh) 供应商考核方法、装置、电子设备和存储介质
CN111427936A (zh) 报表生成方法、装置、计算机设备和存储介质
CN112925856B (zh) 实体关系分析方法、装置、分析设备及计算机存储介质
CN114218935B (zh) 数据分析中的实体展示方法和装置
US11816112B1 (en) Systems and methods for automated process discovery
JP5664050B2 (ja) 情報処理方法、プログラム及び装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111107

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130308

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: 20130319

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130401

R150 Certificate of patent or registration of utility model

Ref document number: 5251623

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: 20160426

Year of fee payment: 3