JP4772368B2 - Business process exception processing generation support apparatus and program - Google Patents
Business process exception processing generation support apparatus and program Download PDFInfo
- Publication number
- JP4772368B2 JP4772368B2 JP2005123953A JP2005123953A JP4772368B2 JP 4772368 B2 JP4772368 B2 JP 4772368B2 JP 2005123953 A JP2005123953 A JP 2005123953A JP 2005123953 A JP2005123953 A JP 2005123953A JP 4772368 B2 JP4772368 B2 JP 4772368B2
- Authority
- JP
- Japan
- Prior art keywords
- exception
- business process
- processing
- execution
- business
- 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
Links
- 238000000034 method Methods 0.000 title claims description 421
- 230000008569 process Effects 0.000 title claims description 421
- 238000012545 processing Methods 0.000 title claims description 144
- 238000007726 management method Methods 0.000 description 13
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 12
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 239000000284 extract Substances 0.000 description 5
- 238000000605 extraction Methods 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
本発明は、ビジネスプロセスの例外処理を自動的に生成することが可能な装置およびプログラムに関する。 The present invention relates to an apparatus and a program that can automatically generate exception handling of a business process.
近年、企業内・企業間を問わずシステム連携やアプリケーション連携を実現するビジネスプロセス実行エンジンが広く利用されている。ビジネスプロセス実行エンジンは、あらかじめシステムやアプリケーションの連携情報を記述したビジネスプロセス(BP)にしたがい、システムやアプリケーションを自動実行する。このようなビジネスプロセス実行エンジンを利用して複数アプリケーションの連携を行うことで実現されるサービスは、ワンストップサービスと呼ばれるものであり、電子政府により各種の行政サービスをウェブサイト上で提供するシステムや、民間における様々な電子商取引システムなどが数多く運用されている。 In recent years, business process execution engines that realize system cooperation and application cooperation regardless of inside or between companies have been widely used. The business process execution engine automatically executes the system or application according to a business process (BP) in which linkage information of the system or application is previously described. A service realized by linking multiple applications using such a business process execution engine is called a one-stop service, a system that provides various administrative services on a website by an electronic government, Many private electronic commerce systems are in operation.
具体例として、図14に示すゴルフ場予約に関するワンストップサービスの例を用い、ビジネスプロセス実行エンジンの使われ方を説明する。
なお、以降「ビジネスプロセス」とは連携して行われるいくつかのシステムやアプリケーションが集まって構成される処理の固まり(処理「そのもの」)のことをいい、「BP」とは上記のようにシステムやアプリケーションの実行順序等を記述した連携情報(処理内容を記述した「ファイル」)のことをいうものとする。
As a specific example, how to use the business process execution engine will be described using an example of a one-stop service related to golf course reservation shown in FIG.
In the following, “business process” refers to a group of processes (process “itself”) configured by a collection of several systems and applications performed in cooperation, and “BP” refers to a system as described above. And linkage information (“file” describing processing contents) describing the execution order of applications and the like.
図14に示すように、ビジネスプロセス実行エンジン101と3つのビジネスプロセス実行サーバ102−1〜102−3とビジネスプロセス実行要求クライアント(ユーザ端末)105がネットワーク103により接続されている。ビジネスプロセス実行サーバ102−1〜102−3はゴルフ場運営業者と運送業者と金融機関がそれぞれ保有しており、これらのサーバではそれぞれゴルフ場予約システム、配送料金算出システム、決済システムが動いている。また、ビジネスプロセス実行エンジン101は、このゴルフ場予約のワンストップサービスを提供するサービス会社が保有しているサーバであり、ウェブ上にゴルフ場予約をするユーザ向けのポータルサイトを運営しているものである。ビジネスプロセス実行要求クライアント105は、ユーザが上記ポータルサイトにアクセスして所定の予約操作等を行うためのユーザ端末である。
As shown in FIG. 14, a business
ゴルフ場予約をするユーザは、ビジネスプロセス実行要求クライアント105からこのポータルサイトにアクセスし、サイトの指示にしたがって氏名・住所・利用するゴルフ場名・利用日時・クレジットカード番号・ゴルフバッグの配送希望有りの旨などを入力する。ビジネスプロセス実行エンジン101は、BP104の記述内容にしたがい、入力されたこれらのデータを使って以下の処理を自動実行する。これにより、ユーザにとってみればワンストップで目的を達成できるサービスが実現される。
A user who makes a golf course reservation accesses this portal site from the business process
ビジネスプロセス実行エンジン101は、BP104の連携順序(1)に記述されているように、まずゴルフ場予約システム(ビジネスプロセス実行サーバ102−1上で稼動している)に対する処理を実行する。ここでは、ビジネスプロセス実行エンジン101は利用希望日時の空き情報の検索をゴルフ場予約システムに要求する。すると同システムが検索を実行し、その結果が同エンジン101に送信される。そして利用可能であれば、同エンジン101はさらにユーザの氏名等のデータを同システムに送信してゴルフ場の予約を要求する。同システムは予約登録を行うとともに、ゴルフ場の住所および利用料金を同エンジン101に送信する。
The business
同エンジン101は、次にBP104の連携順序(2)にしたがい、配送料金算出システム(ビジネスプロセス実行サーバ102−2上で稼動している)に対する処理を実行する。同エンジン101は、ユーザの氏名・住所・ゴルフ場の住所を同システムに送信してゴルフバッグ配送の予約を要求する。同システムは、配送予約の登録を行い、またユーザとゴルフ場の住所から配送料金を算出して同エンジン101に送信する。
Next, the
同エンジン101は、さらにBP104の連携順序(3)にしたがい、決済システム(ビジネスプロセス実行サーバ102−3上で稼動している)に対する処理を実行する。同エンジン101は、ユーザの氏名・クレジットカード番号・ゴルフ場利用料金・配送料金を同システムに送信して決済処理を要求する。同システムは決済を行い、結果を同エンジン101に送信する。同エンジン101は、その結果をポータルサイト上に表示し、ゴルフ場の予約が正常に完了したことをユーザに通知する。
このようにビジネスプロセス実行エンジン101は、ワンストップサービスにおいて他のビジネスプロセス実行サーバ上の複数のシステムを統合する処理を実行している。
The
As described above, the business
なお、このようなビジネスプロセス実行エンジンの処理内容を記述するためのBPは、BP記述言語(あるいはBP実行言語)と呼ばれる仕様にしたがって記述される。BP記述言語は各種団体によって標準化が進められており、例えば、ebXML(electronic business eXtensible Markup Language)やBPEL(Business Process Execution Language for Web Services)のように様々な記述形式のものが策定されている。 A BP for describing the processing contents of such a business process execution engine is described in accordance with a specification called a BP description language (or BP execution language). The BP description language is being standardized by various organizations. For example, various formats such as ebXML (electronic business eXtensible Markup Language) and BPEL (Business Process Execution Language for Web Services) are formulated.
ところで、BPに記述されるシステムやアプリケーション(以下、これらを総称して処理と呼ぶ)の連携情報には、ある処理で例外が発生した場合にその例外に対応して実行される処理(例外処理と呼ぶ)が含まれる。図15に示す具体例を参照して説明する。通常は、(1)Application1、(2)System1、(3)Application2、(4)System2の順に処理(正常処理)107−1〜107−4が実行される。ここで、System1には例外処理108〜110が関連付けられている。例外「ExceptionA」が発生した場合、対応する例外処理(108)SystemE1が実行され、続いて例外処理(109)ApplicationE1が実行される。一方、System1において例外「ExceptionB」が発生した場合には、対応する例外処理SystemE3(110)が実行される。しかし、「ExceptionA」「ExceptionB」以外の例外が発生した場合には、当該例外を補償するための例外処理は行われない。また、Application1、Application2、System2には例外処理が関連付けられていないため、どのような例外が発生した場合にもその例外を補償するための例外処理は一切行われない。このように、BPには各処理に対しどのような例外が発生したらいかなる例外処理を行うのか、あるいは行わないのか、といった連携情報がBP記述言語にしたがって記述されている(例えば、特許文献1および非特許文献1参照)。
しかしながら、上述のビジネスプロセス実行エンジンでは、上記説明のとおりBPに記述された内容にしたがって処理が行われることから、ある処理に対する例外処理が全くBP内に記述されていない場合は、当該処理において例外が発生しても一切例外処理を行うことができない。BP内に記述されている以外の(すなわち、記述者が想定していない)例外が発生した場合も同様である。このため、例外が発生してもそれを補償する処理が行われないことになり、ビジネスプロセスの実行が破綻するおそれがある。また、BPの記述者は、各処理で起こりうるすべての例外を想定し、それらの例外に対応する例外処理を完全に記述する必要がある。 However, in the business process execution engine described above, processing is performed according to the contents described in the BP as described above. Therefore, if no exception processing for a certain process is described in the BP, an exception is not included in the processing. Exception handling cannot be performed at all. The same applies when an exception other than that described in the BP (that is, not assumed by the writer) occurs. For this reason, even if an exception occurs, processing to compensate for it is not performed, and there is a possibility that the execution of the business process will fail. Further, a BP writer needs to assume all exceptions that can occur in each process and completely describe exception processes corresponding to those exceptions.
また、前述のBP記述言語の仕様によれば、ある処理において例外が発生した場合に実行する例外処理を記述(図15のBPを参照)することはできるが、当該例外が発生するまでに実行済みの処理に応じて異なった例外処理を行わせることはできない。すなわち、例えば図16に示すように、処理System1(113)において例外ExceptionAが発生した時に例外処理SystemE1(114)が実行されるというビジネスプロセスの場合、System1の直前の処理(115)がApplication1であるかApplication2であるかによらず、例外ExceptionAが発生すれば必ず例外処理SystemE1(114)が実行される。このように、従来のビジネスプロセス実行エンジンでは、例外ExceptionAが発生した時、直前の処理がApplication1の場合には例外処理SystemE1を実行させ、Application2の場合には例外処理SystemE2を実行させるというような柔軟なビジネスプロセスを構築できないという問題もあった。
Further, according to the specification of the BP description language described above, it is possible to describe an exception process to be executed when an exception occurs in a certain process (see BP in FIG. 15), but execute until the exception occurs. It is not possible to have different exception handling depending on the completed processing. That is, for example, as shown in FIG. 16, in the case of a business process in which the exception process SystemE1 (114) is executed when the exception ExceptionA occurs in the process System1 (113), the process (115) immediately before the System1 is Application1. Regardless of whether
この発明は上記の点に鑑みてなされたものであり、その目的は、例外処理が定義されていない場合にもビジネスプロセスを中断させることなく実行可能にし、なお且つ、例外発生前の処理内容に応じて例外処理を柔軟に実行することが可能な装置およびプログラムを提供することにある。 The present invention has been made in view of the above points. The purpose of the present invention is to enable execution without interrupting a business process even when exception processing is not defined, and also to the processing contents before the occurrence of an exception. Accordingly, an object of the present invention is to provide an apparatus and a program that can flexibly execute exception processing.
本発明は上述した課題を解決するためになされたものであり、請求項1に記載した発明は、ビジネスプロセスを実行するビジネスプロセス実行エンジンにおける例外処理の実行を支援するビジネスプロセス例外処理生成支援装置であって、前記ビジネスプロセス実行エンジンによって実行されたビジネスプロセスの実行履歴を取得する実行履歴取得部と、取得した実行履歴から、ビジネスプロセスで発生した例外と該例外に関連する処理の組み合わせを所定の規則にしたがって抽出して、再利用可能な例外処理の一覧テーブルを生成する再利用可能例外処理生成部と、前記一覧テーブルを格納する再利用可能例外処理記憶部と、前記ビジネスプロセス実行エンジンにおけるビジネスプロセスの実行過程において例外が発生し、該例外に対応する例外処理が前記ビジネスプロセス実行エンジンに定義されていない場合に、所定の規則にしたがって前記一覧テーブルから例外処理を抽出する例外処理定義生成部と、該例外に対応する例外処理として前記抽出した例外処理を前記ビジネスプロセス実行エンジンに実行させる例外処理実行要求部と、を具備することを特徴とするビジネスプロセス例外処理生成支援装置である。
The present invention has been made to solve the above-described problems, and the invention described in
請求項2に記載した発明は、請求項1に記載のビジネスプロセス例外処理生成支援装置において、前記再利用可能例外処理生成部は、前記ビジネスプロセス実行エンジンから取得した実行履歴において前記例外と該例外に関連する処理の組み合わせの出現回数が所定回数以上の場合に、該組み合わせの抽出を行うことを特徴とする。
The invention described in
請求項3に記載した発明は、請求項1または請求項2に記載のビジネスプロセス例外処理生成支援装置において、前記例外処理定義生成部は、対象となるビジネスプロセスで発生した例外と該例外が発生した処理からなる組み合わせが一致し、且つ該処理に先行して行われた少なくとも1つの処理が一致するビジネスプロセスを前記一覧テーブルから選択し、選択したビジネスプロセスの例外処理を該例外に対応する例外処理として抽出することを特徴とする。
The invention described in
請求項4に記載した発明は、請求項3に記載のビジネスプロセス例外処理生成支援装置において、前記例外処理定義生成部は、前記一覧テーブルから複数のビジネスプロセスを選択し、該ビジネスプロセスの複数の例外処理からユーザの選択により1つの例外処理を抽出することを特徴とする。
The invention described in
請求項5に記載した発明は、ビジネスプロセスを実行するビジネスプロセス実行エンジンにおける例外処理の実行を支援するコンピュータに、前記ビジネスプロセス実行エンジンによって実行されたビジネスプロセスの実行履歴を取得するステップと、取得した実行履歴から、ビジネスプロセスで発生した例外と該例外に関連する処理の組み合わせを所定の規則にしたがって抽出して、再利用可能な例外処理の一覧テーブルを生成するステップと、前記一覧テーブルを格納するステップと、前記ビジネスプロセス実行エンジンにおけるビジネスプロセスの実行過程において例外が発生し、該例外に対応する例外処理が前記ビジネスプロセス実行エンジンに定義されていない場合に、所定の規則にしたがって前記一覧テーブルから例外処理を抽出するステップと、該例外に対応する例外処理として前記抽出した例外処理を前記ビジネスプロセス実行エンジンに実行させるステップと、を実行させるためのビジネスプロセス例外処理生成支援プログラムである。 According to a fifth aspect of the present invention, there is provided a computer for supporting execution of exception processing in a business process execution engine that executes a business process, a step of acquiring an execution history of the business process executed by the business process execution engine; Generating a reusable exception processing list table by extracting a combination of exceptions generated in the business process and processing related to the exceptions from the execution history according to a predetermined rule, and storing the list table The list table according to a predetermined rule when an exception occurs in the business process execution process in the business process execution engine and an exception handling corresponding to the exception is not defined in the business process execution engine Exception handling from Comprising the steps of a business process exception handling generation supporting program for executing the steps of executing the extracted exception handling exception processing corresponding to the outside 該例 the business process execution engine, a.
この発明によれば、過去の実行履歴を基にして、例外が発生した処理に至るまでに実行された処理を考慮した再利用可能な例外処理の一覧が自動生成され、さらに該一覧を基にして、BPに例外処理が定義されていない処理において実行すべき最適な例外処理が自動生成される。したがって、BP内に例外処理が定義されていない処理が存在していても、自動生成された例外処理が実行されることにより、破綻を来たすことなくビジネスプロセスの実行を完了させることができる。BPの記述者にとっては、仮にすべての例外処理が完全に記述されていなくても破綻が生じないことから、ビジネスプロセス設計の負担が軽減されるというメリットがある。
また、本発明によれば、例外処理が定義されていない処理において例外が発生した場合に、当該処理に至るまでの実行済み処理を過去の実行履歴と比較することによって、実行すべき最適な例外処理を決定する。したがって、図16のようなビジネスプロセスに対しても、先行して行われた処理に応じて異なる例外処理を実行でき、柔軟なビジネスプロセスの実現が可能となる。
According to the present invention, based on the past execution history, a list of reusable exception processes taking into account the processes executed up to the process in which the exception occurred is automatically generated, and based on the list. Thus, the optimum exception process to be executed in the process in which no exception process is defined in the BP is automatically generated. Therefore, even if there is a process in which no exception process is defined in the BP, the execution of the business process can be completed without causing a failure by executing the automatically generated exception process. For BP writers, there is an advantage in that the burden of business process design is reduced because no failure occurs even if all exception handling is not completely described.
Further, according to the present invention, when an exception occurs in a process for which exception processing is not defined, the optimum exception to be executed is compared by comparing the executed process up to the process with the past execution history. Determine processing. Therefore, even for the business process as shown in FIG. 16, different exception processing can be executed according to the processing performed in advance, and a flexible business process can be realized.
以下、図面を参照し、この発明の実施の形態について説明する。図1は、この発明の一実施の形態によるビジネスプロセス例外処理生成支援装置3が適用されたワンストップサービスシステム全体の構成を示す機能ブロック図である。
図1に示すように、このシステムは、ビジネスプロセス実行要求クライアント1と、ビジネスプロセス実行エンジン2と、ビジネスプロセス例外処理生成支援装置3がネットワーク4に接続されて構成される。
ビジネスプロセス実行要求クライアント1は、ユーザの操作によりビジネスプロセス実行エンジン2に対してビジネスプロセスの実行を要求するクライアントコンピュータである。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a functional block diagram showing a configuration of an entire one-stop service system to which a business process exception process
As shown in FIG. 1, this system is configured by connecting a business process
The business process
ビジネスプロセス実行エンジン2は、ビジネスプロセスの実行に関する処理を行うサーバ装置であり、次の機能部により構成される。
BP定義記憶部11は、BP定義情報が格納されたハードディスクドライブである。ここで、BP定義情報には各処理の実行順序や各処理に対応する例外処理、分岐処理の内容等がBP記述言語にしたがって記述されている。
BP定義管理部12は、BP定義記憶部11に格納されたBP定義情報の管理を行う。具体的には、ビジネスプロセス実行要求クライアント1の要求にしたがってBP定義記憶部11からBP定義情報を読み出してビジネスプロセス実行部13に出力を行い、また更新されたBP定義情報をビジネスプロセス例外処理生成支援装置3から取得してBP定義記憶部11に書き込みを行う。
ビジネスプロセス実行部13は、BP定義情報にしたがって各ビジネスプロセスを実行する。
実行履歴管理部14は、ビジネスプロセス実行部13で実行される各処理を監視し、各処理の実行結果に基づいて実行履歴を作成して実行履歴記憶部15に出力する。また、実行履歴記憶部15から実行履歴を読み出して、これをビジネスプロセス例外処理生成支援装置3に出力する。
実行履歴記憶部15は、実行履歴を格納するハードディスクドライブである。
通信部16は、ネットワーク4に接続されてビジネスプロセス実行要求クライアント1およびビジネスプロセス例外処理生成支援装置3との間でデータの送受信を行うインタフェースである。
The business
The BP
The BP
The business
The execution
The execution
The
ビジネスプロセス例外処理生成支援装置3は、例外処理が定義されていないBPにおいて実行されるべき例外処理を、過去の実行履歴を基に生成する装置であり、次の機能部により構成される。
実行履歴取得部18は、例外処理を生成するために必要なデータであるビジネスプロセスの実行履歴を、ビジネスプロセス実行エンジン2から取得する部分である。
再利用可能例外処理生成部19は、実行履歴を解析することにより再利用可能な例外処理の一覧を生成し、再利用可能例外処理記憶部23に出力する。
例外監視部20は、ビジネスプロセス実行エンジン2から実行履歴を取得して所定の部分を抽出し、例外処理定義生成部21へ送る。
例外処理定義生成部21は、例外処理が定義されていないBPで実行されるべき例外処理を生成するための解析・判断を行う部分である。
例外処理実行要求部22は、例外処理定義生成部21で生成された例外処理をビジネスプロセス実行エンジン2に実行させる部分である。
再利用可能例外処理記憶部23は、再利用可能例外処理生成部19で生成された一覧を格納するハードディスクドライブである。
通信部24は、ネットワーク4に接続されてビジネスプロセス実行要求クライアント1およびビジネスプロセス実行エンジン2との間でデータの送受信を行うインタフェースである。
The business process exception processing
The execution
The reusable exception
The
The exception process
The exception process
The reusable exception
The
次に、上記のビジネスプロセス例外処理生成支援装置3を利用したシステムの動作を図2〜図4に示すフローチャートを参照して説明する。ここで、図2はメインとなる動作を示すものであり、図3および図4はその中のサブステップの動作を説明するものである。
図2のフローチャートに示すように、このシステムは大きく5つのステップに分かれて動作する。
Next, the operation of the system using the business process exception process
As shown in the flowchart of FIG. 2, this system operates in five steps.
(1)ビジネスプロセス実行履歴の生成(ステップS1)
まず、ビジネスプロセス実行エンジン2は常時ビジネスプロセス実行要求クライアント1からの要求を受け付けており、要求は通信部16を経由してBP定義管理部12へ送られる。BP定義管理部12は、要求のあったビジネスプロセスが定義されたBPをBP定義記憶部11から読み出してBP実行部13へ出力する。BP実行部13は、このBPにしたがって順次処理を実行する。
BP実行部13は、各処理の実行が終わるとその実行結果を実行履歴管理部14へ出力する。ここで、出力される実行結果のデータには、ビジネスプロセス名、実行された処理名、正常処理/例外処理の区分、発生した例外名、等の情報が含まれる(図6参照)。実行履歴管理部14は、受け取った実行結果のデータをビジネスプロセス毎にまとめて実行履歴を作成し、実行履歴記憶部15に格納する。こうして、実行履歴は1つのビジネスプロセスが完了する度に更新され、一定の期間にわたって実行された全ビジネスプロセスの全処理内容とその結果が、実行履歴として実行履歴記憶部15に保存されることになる。
(1) Generation of business process execution history (step S1)
First, the business
The
ここで、以下に実行履歴が作成されるまでの具体例について説明する。
図5は、BP定義記憶部11に格納されているBPのBP定義情報を模式的に示した一例である。この模式図では、ビジネスプロセス1からビジネスプロセス6までの6つのビジネスプロセスに関するBP定義情報が記述されている。例えば、ビジネスプロセス1では、通常は処理A、処理B、処理Cの順に処理(正常処理)が実行されてビジネスプロセスが完了する。また、処理Bには例外(例外名をExceptionAとする)が関連付けられており、処理Bで例外「ExceptionA」が発生した場合には処理Cに進まず、例外処理Eが実行されてビジネスプロセスが完了する。
また、同様にビジネスプロセス2では、処理Bの後、所定の条件にしたがって分岐処理が行われ、分岐に応じて処理K、処理Yまたは処理X、処理Hの順に処理が実行される。また、処理K、処理Xにはそれぞれ例外処理Z、Gが関連付けられている。
Here, a specific example until an execution history is created will be described below.
FIG. 5 is an example schematically showing the BP definition information of the BP stored in the BP
Similarly, in the
実際のビジネスプロセスの実行においては、上の説明のようにいくつもある正常処理、例外処理、分岐処理のルートのうち1つのルートだけが実現される。ここでは、ビジネスプロセス1では処理A、B、Eが、ビジネスプロセス2では処理B、K、Zが、それぞれ実際に実行されたとする。他のビジネスプロセスについても同様に、図5において実線の丸で表される処理からなるルートが実現されたとする(なお、実行されなかった処理は点線の丸で示している)。
In actual business process execution, as described above, only one of a number of normal processing, exception processing, and branch processing routes is realized. Here, it is assumed that processes A, B, and E are actually executed in
すると、これらのビジネスプロセスが実行されそれぞれの処理が完了することにより、図6に示す実行履歴の一例が作成されることになる。すなわち、ビジネスプロセス1が完了した際に、図6の実行履歴の1行目〜3行目が生成される。ここで、1行目のデータは処理A(正常処理)が実行されたことを示し、2行目のデータは処理B(正常処理)が実行されたが例外「ExceptionA」が発生したことを示し、3行目のデータは発生した例外に応じて例外処理Eが実行されたことを示す。また、その後ビジネスプロセス3(4〜6行目)、ビジネスプロセス6(7〜9行目)、ビジネスプロセス4(10〜14行目)等々が順次実行されることにより、実行履歴の更新(4行目以下の行の追加)が行われる。このようにして、図6の実行履歴が作成される。
Then, when these business processes are executed and the respective processes are completed, an example of an execution history shown in FIG. 6 is created. That is, when the
(2)例外が発生したビジネスプロセスの抽出(ステップS2)
図2のフローチャートに戻って動作の説明を続けると、次に実行履歴管理部14は、実行履歴記憶部15から実行履歴を読み出してビジネスプロセス例外処理生成支援装置3の実行履歴取得部18に出力する。この出力は、実行履歴が更新される度に(すなわち1つのビジネスプロセスが完了する度に)行われる。実行履歴取得部18は、受け取った実行履歴から例外が発生しなかったビジネスプロセスに関する行の部分を削除して実行履歴を更新し、再利用可能例外処理生成部19に出力する。
上記の実行履歴の一例の場合、ビジネスプロセス6については例外が発生することなく処理が完了しているので、このビジネスプロセス6に関する行(7〜9行目)だけが削除されて(他の行はそのまま)実行履歴が更新される。
(2) Extraction of business process in which exception has occurred (step S2)
Returning to the flowchart of FIG. 2, the description of the operation is continued. Next, the execution
In the example of the execution history described above, the
(3)再利用可能な例外処理の抽出(ステップS3)
次に、再利用可能例外処理生成部19は、ステップS2で更新された実行履歴(例外が発生したビジネスプロセスに関する実行履歴のみが記されている)を解析して、再利用可能な例外処理が抽出された一覧テーブルを作成する。この解析作業は以下のサブステップからなる。図3に示すフローチャートを参照してこれらを説明する。
(3) Extraction of reusable exception processing (step S3)
Next, the reusable exception
(3−1)有向グラフ一覧の作成(ステップS301)
まず、再利用可能例外処理生成部19は、ステップS2で更新された実行履歴を基にして有向グラフ一覧を作成する。ここで有向グラフとは、実際に実行された各ビジネスプロセスについて、実行された各処理を実行順に並べて矢印で結ぶことにより視覚化したものである。有向グラフの表現の方法はどのようなものであっても構わないが、ここでは正常処理を実線丸印、例外処理を点線丸印で表し、例外が発生した処理を示す丸印の右肩に発生した例外名を記すものとする。
(3-1) Creation of directed graph list (step S301)
First, the reusable
図7は、図6の実行履歴(ただしステップS2によりビジネスプロセス6に関する7〜9行目は削除されている)から作成される有向グラフ一覧を示したものである。例えば実行履歴の1〜3行目に記されるビジネスプロセス1からは、上段左端の有向グラフが作成される。
なお、実際の再利用可能例外処理生成部19の動作としては、上記のような有向グラフ(視覚的なデータ)を作成するのではなく、例えばビジネスプロセス1について、
[A、B(ExceptionA)、E]
のような形式で表現されるデータを作成することとしてもよい。以下の説明においては、有向グラフを上記のデータの形式に置き換えて説明を行うこととする。
FIG. 7 shows a directed graph list created from the execution history of FIG. 6 (however, the seventh to ninth lines relating to the
The actual operation of the reusable exception
[A, B (Exception A), E]
It is also possible to create data expressed in a format such as In the following description, the directed graph is replaced with the data format described above.
(3−2)基本セットの抽出(ステップS302)
次に、再利用可能例外処理生成部19は、ステップS301で作成した各有向グラフについて、例外が発生した処理名、発生した例外名、実行された例外処理名、の3点を一式とするデータ(以下、基本セットと呼ぶ)を抽出する。図7の有向グラフについて例示すると、ビジネスプロセス1の基本セットは
B、ExceptionA、E
となり、ビジネスプロセス3の基本セットは
H、ExceptionC、Z
となり、ビジネスプロセス4の基本セットは
B、ExceptionA、E
となり、ビジネスプロセス5の基本セットは
K、ExceptionB、Z
となり、ビジネスプロセス2の基本セットは
K、ExceptionB、Z
となり、2回目に実行されたビジネスプロセス1の基本セットは
B、ExceptionA、E
となる。なお、以下基本セットを表す時は、括弧内にその要素を列挙して(B、ExceptionA、E)のように記述することにする。
(3-2) Basic set extraction (step S302)
Next, the reusable exception
The basic set of
The basic set of
The basic set of business process 5 is K, AcceptanceB, Z
The basic set of
And the basic set of
It becomes. In the following, when the basic set is represented, the elements are listed in parentheses and described as (B, Exception A, E).
(3−3)再利用可能例外処理一覧テーブルの作成(ステップS303)
次に、再利用可能例外処理生成部19は抽出したすべての基本セットを比較して、同一のものがあればその出現回数をカウントし、あらかじめ定めた最低出現回数以上のカウント数となった基本セットに対して、一意の名前(置換処理名)を付与する。ここで、最低出現回数はあらかじめ2回と定められているとする。すると、上記の基本セットについては、基本セット(B、ExceptionA、E)は出現回数が3回であるので置換処理名P1を付与し、基本セット(K、ExceptionB、Z)は出現回数が2回であるので置換処理名P2を付与し、基本セット(H、ExceptionC、Z)は出現回数が1回であるので置換処理名は付与しない。なお、最低出現回数の設定値は2に限定されることはなく、任意の数値に設定することが可能であり、この数値を調整することで発生頻度の高い基本セットのみを抽出できる。
(3-3) Creation of Reusable Exception Processing List Table (Step S303)
Next, the reusable exception
再利用可能例外処理生成部19は次に、置換処理名と基本セットと基本セットの出現回数とチェックフラグを一組のデータとする再利用可能例外処理一覧テーブル(以下、一覧テーブルと呼ぶ)を作成する。上記例の場合に作成される一覧テーブルは、図8に示すものとなる。ここで、基本セット(H、ExceptionC、Z)は置換処理名が付与されていないので一覧テーブルには登録されない。また、チェックフラグはこの段階ではすべて「false」に設定される。
Next, the reusable exception
(3−4)有向グラフ一覧の更新(ステップS304)
次に、再利用可能例外処理生成部19は、各有向グラフにおいて基本セットをステップS303で付与した置換処理名に置き換え、有向グラフ一覧を更新する。図9は、図7の有向グラフ一覧が更新された結果を示したものである。ここで、基本セット(H、ExceptionC、Z)には置換処理名が付与されていないので、更新後の有向グラフ一覧にはこの基本セットを有するビジネスプロセス3の有向グラフは含まれないこととなる。
(3-4) Update directed graph list (step S304)
Next, the reusable exception
(3−5)正常拡張対と例外拡張対の抽出(ステップS305)
次に、再利用可能例外処理生成部19は、一覧テーブルのチェックフラグ欄が「false」である行の置換処理名をすべて選び出す。上記の具体例においては、この段階ではステップS303でチェックフラグはすべての行が「false」に設定されたので、すべての置換処理名すなわちP1とP2が選び出される。
再利用可能例外処理生成部19は次に、ステップS304で更新した各有向グラフに対して、選び出した置換処理名と当該置換処理の後に実行された例外処理名の対(例外拡張対)、および選び出した置換処理名と当該置換処理の前に実行された正常処理の対(正常拡張対)を抽出する。
(3-5) Extraction of normal extension pair and exception extension pair (step S305)
Next, the reusable exception
Next, the reusable
上記具体例においては、
ビジネスプロセス1の正常拡張対(A、P1)と、
ビジネスプロセス4の正常拡張対(X、P1)と、
ビジネスプロセス4の例外拡張対(P1、F)と、
ビジネスプロセス5の正常拡張対(X、P2)と、
ビジネスプロセス2の正常拡張対(B、P2)と、
2回目に実行されたビジネスプロセス1の正常拡張対(A、P1)の計6つの拡張対が抽出される。なおここで、基本セットの表記と同様にカッコ内に要素を列挙することによって拡張対を記述することとする。
In the above example,
Normal extension pair (A, P1) of
Normal extension pair (X, P1) of
Normal extension pair (X, P2) of business process 5;
Normal extension pair (B, P2) of
A total of six extension pairs of normal extension pairs (A, P1) of
(3−6)一覧テーブルへの正常/例外拡張対の登録(ステップS306)
次に、再利用可能例外処理生成部19は、ステップS303においてある一定回数以上出現する基本セットに対して一意の名前を付与する操作を行ったのと同様に、ここではステップS305で抽出した正常拡張対と例外拡張対それぞれの出現する回数があらかじめ定めた最低出現回数以上であれば、その拡張対に対して一意の名前(置換処理名)を付与する。上記具体例では、正常拡張対(A、P1)は2回、その他の拡張対はすべて1回出現している。ここで最低出現回数は2回と定められているとすると、2回出現している正常拡張対(A、P1)についてのみ置換処理名(P3とする)が付与されることになる。なお、最低出現回数の値は、ステップS303とステップS306とで異なっていてもよい。
(3-6) Registration of normal / exception extension pair in list table (step S306)
Next, the reusable exception
再利用可能例外処理生成部19は次に、付与した置換処理名とそれに対応する正常または例外拡張対とその出現回数とチェックフラグを一組のデータとして一覧テーブルに追加して登録する(ステップS303で基本セットについて行ったのと同様の操作である)。この時、追加されるのが正常拡張対の場合は、さらに当該正常拡張対を構成する正常処理名(正常拡張対が(A、P1)のときは「A」)を「正常処理の順序」の欄の最後部に付加する。また、例外拡張対の場合は、当該例外拡張対を構成する例外処理名を「例外処理の順序」の欄の先頭に付加する。
このステップS306によって更新された一覧テーブルを図10に示す。3行目のデータがこのステップで追加された部分である。
Next, the reusable exception
FIG. 10 shows the list table updated in step S306. The data in the third row is the part added in this step.
(3−7)有向グラフ一覧の再更新(ステップS307)
次に、再利用可能例外処理生成部19は、ステップS304と同様に、各有向グラフの正常拡張対または例外拡張対をステップS306で付与した置換処理名に置き換え、有向グラフ一覧を更新する。上記の具体例においては、正常拡張対(A、P1)だけが置換処理名を付与されているので置き換えが行われ、他の拡張対は有向グラフ一覧からは削除される。
再更新後の有向グラフ一覧を図11に示す。上記具体例の有向グラフは、このステップの結果、置換処理名P3のみから構成されるもの(1回目に実行されたビジネスプロセス1から生成されたものと、2回目に実行されたビジネスプロセス1から生成されたものとの2つある)となる。このように、1つの置換処理名のみの有向グラフになった場合は、一覧テーブルのチェックフラグを「true」に変える。
有向グラフにまだ置換処理名以外の要素が含まれる場合は、ステップS305からの操作をすべての有向グラフの要素数が1つになるまで繰り返す。
(3-7) Renewal of directed graph list (step S307)
Next, as in step S304, the reusable exception
A list of directed graphs after re-update is shown in FIG. As a result of this step, the directed graph of the above specific example is composed of only the replacement process name P3 (generated from the
When elements other than the replacement process name are still included in the directed graph, the operation from step S305 is repeated until the number of elements in all the directed graphs becomes one.
(3−8)一覧テーブルの保存(ステップS308)
再利用可能例外処理生成部19は、最終的に得られた一覧テーブルを再利用可能例外処理記憶部23に出力し、同記憶部23に一覧テーブルが格納される。上記例における最終的な一覧テーブルを図12に示す。
(3-8) Save list table (step S308)
The reusable exception
(4)例外処理未記述BPの抽出(ステップS4)
ここでステップS3のサブステップからメインの動作に戻る。再び図2のフローチャートを参照しながら説明する。
BP実行部13は、前述したようにステップS1において、ビジネスプロセス実行要求クライアント1から要求を受け付けたビジネスプロセスの処理を実行している。ステップS4(とステップS5)は、ビジネスプロセスのいずれかに例外が発生し、しかも当該例外に対応する例外処理がBPに定義されていない場合(このようなBPを例外処理未記述BPと呼ぶ)に行われるステップである。
(4) Extraction of exception processing undescribed BP (step S4)
Here, the process returns from the sub-step of step S3 to the main operation. This will be described with reference to the flowchart of FIG. 2 again.
As described above, the
このような場合にステップS1で作成される実行履歴の一例を図13に示す。この実行履歴において、ビジネスプロセス12(7〜8行目)が例外処理未記述BPに相当する。なおこの実行履歴に示されるように、例外が発生した処理Bに対しては例外処理が行われず、ビジネスプロセス12の実行は中断されている。
図2のステップS4において、実行履歴管理部14は、例外処理未記述BPにより定義されるビジネスプロセスが実行されてその結果が実行履歴に記録されると、ビジネスプロセス例外処理生成支援装置3の例外監視部20にその実行履歴を出力する。例外監視部20は、実行履歴の最後部(上記例では7〜8行目)に記録されている例外処理未記述BPに相当する実行結果部分を抽出し、例外処理定義生成部21に送る。
An example of the execution history created in step S1 in such a case is shown in FIG. In this execution history, the business process 12 (7th to 8th lines) corresponds to an exception processing undescribed BP. As shown in the execution history, the exception process is not performed for the process B in which an exception has occurred, and the execution of the
In step S4 of FIG. 2, when the business process defined by the exception process undescribed BP is executed and the result is recorded in the execution history, the execution
(5)例外処理の決定と実行(ステップS5)
次に例外処理定義生成部21は、送られた実行結果を用い、図4のフローチャートに示されたサブステップにしたがって例外処理未記述BPに付加されるべき例外処理を生成する。以下、図4を参照して説明する。
(5) Determination and execution of exception handling (step S5)
Next, the exception process
(5−1)対象有向グラフと有向グラフ群の作成(ステップS501)
例外処理定義生成部21は、例外監視部20から受けた例外処理未記述BPによる実行結果のデータから、実行結果に対応する有向グラフ(この有向グラフを対象有向グラフと呼ぶ)を作成する。上記例(図13)の実行結果からは、対象有向グラフ[A、B(ExceptionA)]が得られる。
また、例外処理定義生成部21は、再利用可能例外処理記憶部23から一覧テーブル(図12)を取得し、テーブル内の例外発生処理名、発生例外名、正常処理名からなる有向グラフを、すべての置換処理名に対して作成する。作成された有向グラフを総称して有向グラフ群と呼ぶ。図12の一覧テーブルからは、[B(ExceptionA)]、[K(ExceptionB)]、[A、B(ExceptionA)]の3つの有向グラフからなる有向グラフ群が得られる。
(5-1) Creation of target directed graph and directed graph group (step S501)
The exception process
Further, the exception process
(5−2)例外発生処理の比較(ステップS502)
ステップS501で作成した対象有向グラフと有向グラフ群はともに、ビジネスプロセスを構成する処理のうち例外が発生するまでの処理に着目したものである。したがって両者の有向グラフを比較することにより、過去に実行された複数のビジネスプロセス(有向グラフ群)の中から、例外処理未定義BP(対象有向グラフ)を構成している処理と同一の処理を有するものを選出することができる。このステップS502と次のステップS503により、上記の選出が行われる。
まず例外処理定義生成部21は、対象有向グラフの例外およびその例外が発生した処理の組み合わせと、各有向グラフの例外およびその例外が発生した処理の組み合わせとを比較して、対象有向グラフの組み合わせと同一の組み合わせを有する有向グラフを有向グラフ群から選び出す。上記の例では、対象有向グラフの例外は「ExceptionA」であり、例外が発生した処理は「B」であるから、同じ組み合わせを有する有向グラフ[B(ExceptionA)]と[A、B(ExceptionA)]の2つが選ばれる。
(5-2) Comparison of exception generation processing (step S502)
Both the target directed graph and the directed graph group created in step S501 focus on the processing up to the occurrence of an exception among the processing constituting the business process. Therefore, by comparing the directed graphs of the two, those having the same processing as the processing constituting the exception processing undefined BP (target directed graph) from among a plurality of business processes (directed graph group) executed in the past Can be elected. The above selection is performed by this step S502 and the next step S503.
First, the exception process
(5−3)例外発生処理に先行する正常処理の比較(ステップS503)
次に、例外処理定義生成部21は選ばれた有向グラフと対象有向グラフについて、例外発生処理の1つ前に先行して実行された正常処理を比較し、当該正常処理が対象有向グラフと同一である有向グラフを有向グラフ群から選び出す。
さらに例外処理定義生成部21は、同様にして例外発生処理の2つ前の正常処理が対象有向グラフと同一である有向グラフを有向グラフ群から選び出す。以下、例外発生処理の3つ前、4つ前、と同様の操作を比較される正常処理が一致しなくなるまで繰り返す。この操作の結果、最終的に対象有向グラフと最も近似している(例外発生処理とそれに先行するいくつかの正常処理が同一である)有向グラフが選び出されることになる。
(5-3) Comparison of normal processing preceding exception generation processing (step S503)
Next, the exception process
Further, the exception process
なお、この操作により選出される有向グラフが複数存在する場合がある。すなわち、発生した例外と、例外発生処理と、該処理に先行して実行された正常処理が一致し、発生した例外に対応する例外処理のみが異なる場合である。このような場合は、複数の有向グラフを選出結果とする。
このステップの操作を上記の例に当てはめると、ステップS502で選ばれた2つの有向グラフ[B(ExceptionA)]と[A、B(ExceptionA)]の例外発生処理は「B」であり、この「B」の1つ前に先行する正常処理は、前者には無く、後者は「A」である。よって、操作の1段階目では後者の有向グラフ[A、B(ExceptionA)]が選ばれる。次に例外発生処理「B」の2つ前の正常処理は無いので、操作はここで終了する。こうして、上記例では対象有向グラフと最も近似している有向グラフとして[A、B(ExceptionA)]が選出される。
There may be a plurality of directed graphs selected by this operation. That is, the exception that has occurred, the exception generation process, and the normal process executed prior to the process match, and only the exception process corresponding to the generated exception is different. In such a case, a plurality of directed graphs are selected.
When the operation of this step is applied to the above example, the exception generation processing of the two directed graphs [B (ExceptionA)] and [A, B (ExceptionA)] selected in step S502 is “B”. There is no normal process preceding the first “” in the former, and the latter is “A”. Therefore, in the first stage of the operation, the latter directed graph [A, B (Exception A)] is selected. Next, since there is no normal process two before the exception occurrence process “B”, the operation ends here. Thus, in the above example, [A, B (Exception A)] is selected as the directed graph that is most approximate to the target directed graph.
(5−4)対応する例外処理の有向グラフの作成(ステップS504)
次に、例外処理定義生成部21は、ステップS503で選出された有向グラフに対応する置換処理が記述されている行を一覧テーブルから取り出し、「例外処理の順序」の欄に書かれた例外処理を表す有向グラフを作成する。ステップS503の選出結果が複数となった場合は、それぞれについて有向グラフを作成する。上記例では、対応する置換処理はP3であり、これから有向グラフ[E]が作成される。
作成された有向グラフが複数の場合は、例外処理定義生成部21はさらに、得られた複数の有向グラフのデータをビジネスプロセス実行要求クライアント1へ送信し、同クライアント1の操作者に選択を促す。操作者が1つの有向グラフを決定すると、例外処理定義生成部21は同クライアント1から当該有向グラフのデータを取得する(ステップS510、ステップS511)。
なお、有向グラフが複数の場合、上記のようにビジネスプロセス実行要求クライアントの操作者に選択させる代わりに、例外処理定義生成部21がランダムに1つの有向グラフを選択してもよい。また、一覧テーブルにおいて出現回数が最も多い有向グラフを選択するようにしてもよい。
(5-4) Creation of directed graph of corresponding exception processing (step S504)
Next, the exception process
When there are a plurality of directed graphs created, the exception processing
When there are a plurality of directed graphs, the exception process
(5−5)付加すべき例外処理の決定とBP定義情報の作成(ステップS505)
例外処理定義生成部21は、例外処理未記述BPに付加すべき例外処理として、ステップS504またはステップS511で作成された有向グラフに対応する例外処理(上記例では例外処理E)を採用し、当該例外処理を記述するBP定義情報を作成する。以上により、例外処理が定義されていなかったBPにおいて実行すべき処理の内容が確定する。
(5-5) Determination of exception processing to be added and creation of BP definition information (step S505)
The exception process
(5−6)付加された例外処理の実行(ステップS506)
例外処理定義生成部21は、上記ステップで作成したBP定義情報を例外処理実行要求部22へ出力し、例外処理実行要求部22は、受け取ったBP定義情報に基づいて例外処理の実行要求をビジネスプロセス実行エンジン2のBP実行部13に出力する。これにより、BP実行部13はステップS4で中断されたビジネスプロセスを続行させる。
(5-6) Execution of added exception processing (step S506)
The exception process
このように、上記の実施形態によれば、例外処理未記述BPが実行されて対応する例外処理が定義されていない例外が発生した場合に、破綻を来たすことなくビジネスプロセスを続行することが可能となる。すなわち、まずビジネスプロセス例外処理生成支援装置3が過去の実行履歴を解析して、再利用可能な(発生頻度の高い)例外処理の一覧が自動生成される。さらに、ビジネスプロセス例外処理生成支援装置3は、生成した例外処理一覧の中から例外処理未記述BPにおいて実行すべき最適な例外処理を抽出し、抽出された例外処理が実行されることによりビジネスプロセスが中断することなく続行される。
As described above, according to the above-described embodiment, when an exception processing undescribed BP is executed and an exception for which the corresponding exception processing is not defined is generated, it is possible to continue the business process without causing a failure. It becomes. That is, first, the business process exception process
また上記実施形態によれば、先行して行われた処理に応じて異なる例外処理を実行することができる。すなわち、ビジネスプロセス例外処理生成支援装置3は、例外が発生した処理に至るまでの先行処理を過去の実行履歴と比較することにより実行すべき例外処理を決定するので、当該先行処理が異なれば抽出される例外処理も異なる。したがって、先行処理に応じて異なる例外処理を実行させることが可能となるのである。
Moreover, according to the said embodiment, a different exception process can be performed according to the process performed previously. That is, the business process exception process
以上、この発明の実施の形態を詳細に説明してきたが、この発明を実施するに当たっては、発明の要旨を変更しない範囲内において様々な変形・設計変更が可能である。
例えば、図1のシステム構成に代わる別のシステム構成として、図17に示すような形態を採ることも可能である。すなわち、図1のシステムではビジネスプロセス実行エンジン2がビジネスプロセス実行部13を有しており、同エンジン2(を実装しているコンピュータ)がビジネスプロセスの実行を担当していたが、図17に示すように、同エンジン2はBP定義管理と実行履歴管理の機能だけを有し、ネットワーク4で接続された別のコンピュータであるビジネスプロセス実行サーバ5〜7がビジネスプロセスの実行を担当するようにしてもよい。
Although the embodiments of the present invention have been described in detail above, various modifications and design changes can be made without departing from the scope of the invention when the present invention is implemented.
For example, as another system configuration in place of the system configuration in FIG. 1, it is possible to adopt a form as shown in FIG. That is, in the system of FIG. 1, the business
また逆に、図1や図17のようにビジネスプロセス実行エンジン2とビジネスプロセス例外処理生成支援装置3とビジネスプロセス実行サーバ5〜7が別個のコンピュータとしてネットワーク4に接続されているシステムに代えて、これらが全て同一のコンピュータとして構成されている形態を採ってもよい。
なお図17のシステム構成において、ビジネスプロセス実行エンジン2やビジネスプロセス例外処理生成支援装置3の運用者は、ビジネスプロセス実行サーバ5〜7の運用者と同じであっても異なっていてもよい。すなわち、本発明は企業間のシステム連携にも企業内のシステム連携にも同じように適用することが可能である。
Conversely, instead of a system in which the business
In the system configuration of FIG. 17, the operators of the business
また、上記の実施形態では、ビジネスプロセスが実行されている最中に例外処理未記述BPに対して最適な例外処理を抽出する動作について説明を行ったが、BPを記述する場面(ワンストップサービスのシステムを構築する場面)において、本発明にかかるビジネスプロセス例外処理生成支援装置3を動作させ、BP記述者に代わって例外処理の記述を行わせるという使い方をすることもできる。
In the above embodiment, the operation of extracting the optimum exception processing from the exception processing undescribed BP while the business process is being executed has been described. It is also possible to use the business process exception processing
この発明は、ビジネスプロセス実行エンジンを利用してアプリケーション連携を実現する、ワンストップサービスのシステムに用いて好適である。 The present invention is suitable for use in a one-stop service system that implements application cooperation using a business process execution engine.
1…ビジネスプロセス実行要求クライアント 2…ビジネスプロセス実行エンジン 3…ビジネスプロセス例外処理生成支援装置 4…ネットワーク 5〜7…ビジネスプロセス実行サーバ 11…BP定義記憶部 12…BP定義管理部 13…ビジネスプロセス実行部 14…実行履歴管理部 15…実行履歴記憶部 16…通信部 18…実行履歴取得部 19…再利用可能例外処理生成部 20…例外監視部 21…例外処理定義生成部 22…例外処理実行要求部 23…再利用可能例外処理記憶部 24…通信部 101…ビジネスプロセス実行エンジン 102−1〜102−3…ビジネスプロセス実行サーバ 103…ネットワーク 104…BP 105…ビジネスプロセス実行要求クライアント(ユーザ端末) 107−1〜107−4…正常処理 108〜110…例外処理 113…処理 114…例外処理 115…処理
DESCRIPTION OF
Claims (5)
前記ビジネスプロセス実行エンジンによって実行されたビジネスプロセスの実行履歴を取得する実行履歴取得部と、
取得した実行履歴から、ビジネスプロセスで発生した例外と、該例外が発生した処理と、該例外の発生により該処理の後に実行された例外処理との組み合わせを所定の規則にしたがって抽出して、再利用可能な例外処理の一覧テーブルを生成する再利用可能例外処理生成部と、
前記一覧テーブルを格納する再利用可能例外処理記憶部と、
前記ビジネスプロセス実行エンジンにおけるビジネスプロセスの実行過程において例外が発生し、該例外に対応する例外処理が前記ビジネスプロセス実行エンジンに定義されていない場合に、所定の規則にしたがって前記一覧テーブルから例外処理を抽出する例外処理定義生成部と、
該例外に対応する例外処理として前記抽出した例外処理を前記ビジネスプロセス実行エンジンに実行させる例外処理実行要求部と、
を具備することを特徴とするビジネスプロセス例外処理生成支援装置。 A business process exception processing generation support device that supports execution of exception processing in a business process execution engine that executes a business process,
An execution history acquisition unit for acquiring an execution history of a business process executed by the business process execution engine;
From the acquired execution history, a combination of the exception that occurred in the business process, the processing that caused the exception, and the exception processing that was executed after the processing due to the occurrence of the exception is extracted in accordance with a predetermined rule. A reusable exception processing generator that generates a list table of available exception processing;
A reusable exception handling storage for storing the list table;
When an exception occurs in the execution process of the business process in the business process execution engine and exception processing corresponding to the exception is not defined in the business process execution engine, exception processing is performed from the list table according to a predetermined rule. An exception processing definition generator to be extracted;
An exception process execution request unit that causes the business process execution engine to execute the extracted exception process as an exception process corresponding to the exception;
A business process exception processing generation support apparatus comprising:
前記ビジネスプロセス実行エンジンから取得した実行履歴において前記例外と該例外に関連する処理の組み合わせの出現回数が所定回数以上の場合に、該組み合わせの抽出を行うことを特徴とする請求項1に記載のビジネスプロセス例外処理生成支援装置。 The reusable exception process generator generates
The combination is extracted when the number of appearances of a combination of the exception and a process related to the exception is a predetermined number or more in the execution history acquired from the business process execution engine. Business process exception processing generation support device.
対象となるビジネスプロセスで発生した例外と該例外が発生した処理からなる組み合わせが一致し、且つ該処理に先行して行われた少なくとも1つの処理が一致するビジネスプロセスを前記一覧テーブルから選択し、選択したビジネスプロセスの例外処理を該例外に対応する例外処理として抽出することを特徴とする請求項1または請求項2に記載のビジネスプロセス例外処理生成支援装置。 The exception handling definition generation unit
Select a business process from the list table in which the combination of the exception that occurred in the target business process matches the combination of the process in which the exception has occurred and at least one process that preceded the process matches, 3. The business process exception processing generation support apparatus according to claim 1, wherein exception processing of the selected business process is extracted as exception processing corresponding to the exception.
前記一覧テーブルから複数のビジネスプロセスを選択し、該ビジネスプロセスの複数の例外処理からユーザの選択により1つの例外処理を抽出することを特徴とする請求項3に記載のビジネスプロセス例外処理生成支援装置。 The exception handling definition generation unit
4. The business process exception process generation support apparatus according to claim 3, wherein a plurality of business processes are selected from the list table, and one exception process is extracted from a plurality of exception processes of the business process by user selection. .
前記ビジネスプロセス実行エンジンによって実行されたビジネスプロセスの実行履歴を取得するステップと、
取得した実行履歴から、ビジネスプロセスで発生した例外と、該例外が発生した処理と、該例外の発生により該処理の後に実行された例外処理との組み合わせを所定の規則にしたがって抽出して、再利用可能な例外処理の一覧テーブルを生成するステップと、
前記一覧テーブルを格納するステップと、
前記ビジネスプロセス実行エンジンにおけるビジネスプロセスの実行過程において例外が発生し、該例外に対応する例外処理が前記ビジネスプロセス実行エンジンに定義されていない場合に、所定の規則にしたがって前記一覧テーブルから例外処理を抽出するステップと、
該例外に対応する例外処理として前記抽出した例外処理を前記ビジネスプロセス実行エンジンに実行させるステップと、
を実行させるためのビジネスプロセス例外処理生成支援プログラム。 A computer that supports the execution of exception handling in the business process execution engine that executes business processes.
Obtaining an execution history of a business process executed by the business process execution engine;
From the acquired execution history, a combination of the exception that occurred in the business process, the processing that caused the exception, and the exception processing that was executed after the processing due to the occurrence of the exception is extracted in accordance with a predetermined rule. Generating a list table of available exception handling;
Storing the list table;
When an exception occurs in the execution process of the business process in the business process execution engine and exception processing corresponding to the exception is not defined in the business process execution engine, exception processing is performed from the list table according to a predetermined rule. Extracting, and
Causing the business process execution engine to execute the extracted exception handling as exception handling corresponding to the exception;
Business process exception handling generation support program to execute.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005123953A JP4772368B2 (en) | 2005-04-21 | 2005-04-21 | Business process exception processing generation support apparatus and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005123953A JP4772368B2 (en) | 2005-04-21 | 2005-04-21 | Business process exception processing generation support apparatus and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006302032A JP2006302032A (en) | 2006-11-02 |
JP4772368B2 true JP4772368B2 (en) | 2011-09-14 |
Family
ID=37470234
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005123953A Active JP4772368B2 (en) | 2005-04-21 | 2005-04-21 | Business process exception processing generation support apparatus and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4772368B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008134906A (en) * | 2006-11-29 | 2008-06-12 | Hitachi Ltd | Business process definition generation method, device and program |
JP5084355B2 (en) | 2007-06-07 | 2012-11-28 | キヤノン株式会社 | Flow processing execution device, flow processing execution method, and program |
JP4943240B2 (en) * | 2007-06-14 | 2012-05-30 | 株式会社日立製作所 | Business process creation method, business process creation device, and business process creation program |
WO2014016884A1 (en) * | 2012-07-23 | 2014-01-30 | 株式会社日立製作所 | Computer system, data processing method, and recording medium |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6353654A (en) * | 1986-08-22 | 1988-03-07 | Nec Corp | System for continuously executing and processing program in case of occurrence of exception |
JPH02165358A (en) * | 1988-12-20 | 1990-06-26 | Nec Corp | Program loading system with learning function |
JP2004242200A (en) * | 2003-02-07 | 2004-08-26 | Matsushita Electric Ind Co Ltd | Electronic device, mobile type device, and transmitting system of remote control program |
-
2005
- 2005-04-21 JP JP2005123953A patent/JP4772368B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2006302032A (en) | 2006-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10810771B2 (en) | Systems and methods for rendering a visualization using event data | |
US9864673B2 (en) | Integration process management console with error resolution interface | |
US8456477B2 (en) | Information processing apparatus, information processing method and program for generating and displaying network structures | |
US9268831B2 (en) | System and method for extracting user selected data from a database | |
JP2011022705A (en) | Trail management method, system, and program | |
US20240104088A1 (en) | Real time system for ingestion, aggregation, and identity association of data from user actions performed on websites or applications | |
JP4772368B2 (en) | Business process exception processing generation support apparatus and program | |
CN112598391A (en) | Business process creation method and device, electronic equipment and storage medium | |
JP4215771B2 (en) | Service evaluation method, system, and computer program | |
CN106503186A (en) | A kind of data managing method, client and system | |
JP5222604B2 (en) | Document management system and method | |
US20130091484A1 (en) | System for generating application architecture design work products | |
JP2007524886A (en) | System and method for managing a distributed design network | |
JP2008165409A (en) | Electronic business form retrieving device, electronic business form retrieving method, and program | |
JP4881485B1 (en) | Information notification system, information presentation system, information notification method, information presentation method, information notification program, and information presentation program | |
EP1816572A1 (en) | Time sharing managing device, document creating device, document reading device, time sharing managing method, document creating method, and document reading method | |
US20140067445A1 (en) | Storage medium storing analysis program, analysis method and analysis apparatus | |
JP3967230B2 (en) | Image information display system | |
JP2009163566A (en) | Job analysis support apparatus | |
JP2007328499A (en) | Portal site generation device and portal screen design program | |
US20130086085A1 (en) | Computer product, analysis support method, analysis support apparatus, and system | |
JP4663526B2 (en) | Form creation support device, form creation support method, and form creation support program | |
JP7346671B2 (en) | Data conversion device and data conversion method | |
JP7098122B1 (en) | Article monitoring system, article monitoring method with attention information, computer program | |
JP4805491B2 (en) | Dictionary management program and computer system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080115 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110301 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110425 |
|
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: 20110614 |
|
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: 20110622 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140701 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4772368 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |