(57)【要約】【課題】全体のアボート処理が不適切な業務に対し、適切な管理を実現する。【解決手段】各業務トランザクション（ｔｒ１，ｔｒ２）の引継関係を定義（ｔｒ１−→ｔｒ２）したことにより、業務トランザクション間の区切れを明確にし、実行管理中のプロセスをアボート処理する際には、全ての業務トランザクションのうち、実行管理中のプロセスを含む業務トランザクションのみをアボートできるようにする。【選択図】  図２
2005031914.tif 000002
【特許請求の範囲】
【請求項１】
１以上のプロセスを含む複数の業務トランザクションを管理するための業務トランザクション管理装置であって、
前記各業務トランザクション毎にプロセス識別情報とプロセス実行順序とが定義されたプロセス定義情報、及び前記各業務トランザクション間の引継関係が定義された引継定義情報が記憶された定義情報記憶手段と、
前記プロセス定義情報に含まれるプロセス識別情報のうち、実行管理中のプロセス識別情報及び実行状態情報が記憶される実行状態記憶手段と、
前記プロセス定義情報、前記引継定義情報及び入力された実行状態情報に基づいて、前記実行状態記憶手段を更新する実行管理手段と、
を備えたことを特徴とする業務トランザクション管理装置。
【請求項２】
１以上のプロセスを含む複数の業務トランザクションを管理するための業務トランザクション管理方法であって、
前記各業務トランザクション毎にプロセス識別情報とプロセス実行順序とを定義したプロセス定義情報を準備する工程と、
前記各業務トランザクション間の引継関係を定義した引継定義情報を準備する工程と、
前記プロセス定義情報に含まれるプロセス識別情報のうち、実行管理中のプロセス識別情報及び実行状態情報を設定する工程と、
前記プロセス定義情報、前記引継定義情報及び入力された実行状態情報に基づいて、実行管理中のプロセス識別情報及び実行状態情報を更新する工程と、
を備えたことを特徴とする業務トランザクション管理方法。
【請求項３】
請求項２に記載の業務トランザクション管理方法において、
前記実行管理中のプロセス識別情報及び実行状態情報を設定する工程は、
前記各プロセスを構成する計算機実行プロセスと関連作業とに対応し、現在管理中の計算機実行プロセスを示すプロセス識別情報及び実行状態情報を設定する工程と、現在管理中の関連作業を示すプロセス識別情報及び実行状態情報を設定する工程と、
を含んでいることを特徴とする業務トランザクション管理方法。
【請求項４】
請求項２又は請求項３に記載の業務トランザクション管理方法において、
前記実行管理中のプロセスをアボート処理するとき、全ての業務トランザクションのうち、当該実行管理中のプロセスを含む業務トランザクションのみをアボートする工程と、
を含んでいることを特徴とする業務トランザクション管理方法。
【請求項５】
１以上のプロセスを含む複数の業務トランザクションを管理するための業務トランザクション管理装置に用いられるプログラムであって、
前記業務トランザクション管理装置のコンピュータを、
前記各業務トランザクション毎にプロセス識別情報とプロセス実行順序とが定義されたプロセス定義情報、及び前記各業務トランザクション間の引継関係が定義された引継定義情報が記憶された定義情報記憶領域をメモリに形成する手段、
前記プロセス定義情報に含まれるプロセス識別情報のうち、実行管理中のプロセス識別情報及び実行状態情報が記憶される実行状態記憶領域をメモリに形成する手段、
前記メモリの定義情報記憶領域内のプロセス定義情報及び引継定義情報と、入力された実行状態情報とに基づいて、前記メモリの実行状態記憶領域を更新する手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、業務トランザクション管理装置、方法及びプログラムに関する。
【０００２】
【従来の技術】
近年、各種プラントや交通信号の制御システム、又は列車運行の管理システムなど、コンピュータシステムの社会的役割が増大している。この種のコンピュータシステムは、２４時間３６５日稼動が強く要望されており、ハードウェアの多重化による高信頼性システム（ＨＡ：Ｈｉｇｈ  Ａｖａｉｌａｂｉｌｉｔｙ）などが使われることが多い。また、高信頼性技術の一つとして、ストレージネットワーキング技術を利用した、広域のリアルタイムでのデータの多重化も実現可能となっている。
【０００３】
すなわち、コンピュータシステムは、これら高信頼化技術により、障害時の復旧（高可用性）やデータの保護に関してかなりの程度で実現可能となっている。
【０００４】
一方、現実世界の業務は、コンピュータシステムによる処理だけでは完結せず、コンピュータシステムの処理後に人間の関連作業を必要とする場合がある。ここで、コンピュータシステムによる処理と、人間の関連作業とを含む業務単位を業務トランザクションと呼ぶ。
【０００５】
業務トランザクションは、コンピュータシステムにおける既存のトランザクション技術（例えば非特許文献１参照。）を人間系の処理を含むように拡張した概念である。
このような業務トランザクションの管理によれば、コンピュータシステム上の処理のみならず、人間系の処理を含めた業務全般の処理状況を把握可能となっている。例えば、現時点で出願公開前の特願２００２−７３２０３号明細書の技術を用いれば、受注→出庫→配送→集金などの流れを、実際の出庫や配送の状態を含めて、本当に完了したか否か、また、いずれの業務を実行中であるかを管理可能となっている。
【０００６】
【非特許文献１】
フィリップ・Ａ・バーンスタイン、エリック・ニューカマー著、大磯和宏、小野沢博文、木下聡、仲山恭央、早瀬勝  訳、「トランザクション処理システム入門」、日経ＢＰ社、１９９８年３月２３日、ｐ．８−１３
【０００７】
【発明が解決しようとする課題】
しかしながら、以上のような業務トランザクションの管理技術は、本発明者の検討によれば、以下の点で改良の余地がある。
例えば、集金という業務を考えてみると、商品の発送後に納入先企業の倒産などが生じて集金できない場合がありえる。この場合、アボート（中止）処理は、集金のみに適用し、集金より前の処理（受注、出庫、配送）には適用しない、といった扱いが必要となる。しかし、この扱いは現在の業務トランザクションの管理技術には存在しない。すなわち、現在の業務トランザクションの管理技術によれば、アボート処理は全ての業務トランザクションを対象として行なうので、集金不能の場合であっても、受注、出庫、配送及び集金がアボート処理される。従って、業務内容によっては、不適切な管理となる場合がある。
【０００８】
本発明は上記実情を考慮してなされたもので、全体のアボート処理が不適切な業務に対し、適切な管理を実現し得る業務トランザクション管理装置、方法及びプログラムを提供することを目的とする。
【０００９】
【課題を解決するための手段】
第１の発明は、１以上のプロセスを含む複数の業務トランザクションを管理するための業務トランザクション管理装置であって、前記各業務トランザクション毎にプロセス識別情報とプロセス実行順序とが定義されたプロセス定義情報、及び前記各業務トランザクション間の引継関係が定義された引継定義情報が記憶された定義情報記憶手段と、前記プロセス定義情報に含まれるプロセス識別情報のうち、実行管理中のプロセス識別情報及び実行状態情報が記憶される実行状態記憶手段と、前記プロセス定義情報、前記引継定義情報及び入力された実行状態情報に基づいて、前記実行状態記憶手段を更新する実行管理手段と、を備えた業務トランザクション管理装置である。
【００１０】
なお、第１の発明は、名称を「…装置」として表現したが、これに限らず、「システム」、「方法」、「プログラム」又は「コンピュータ読取り可能な記憶媒体」といった他の名称で表現しても良いことは言うまでもない。
【００１１】
（作用）
第１の発明は、各業務トランザクションの引継関係を定義したことにより、業務トランザクション間の区切れを明確にし、実行管理中のプロセスをアボート処理する際には、全ての業務トランザクションのうち、実行管理中のプロセスを含む業務トランザクションのみをアボートできるようにしたので、全体のアボート処理が不適切な業務に対し、適切な管理を実現することができる。
【００１２】
【発明の実施の形態】
以下、本発明の一実施形態について図面を参照しながら説明する。なお、本実施形態では、受注→出庫→配送という処理と、集金という処理をそれぞれ個別の業務トランザクションとして扱い、この２つの業務トランザクションの間に引継ぎという関係を定義することで、２階層のレベルで業務トランザクションを管理する。
【００１３】
概略は次の通りである。受注→出庫→配送を業務トランザクションＴ１、集金を業務トランザクションＴ２と定義する。受注、出庫、配送、集金のそれぞれは、業務トランザクション管理の仕組みにより実行が管理される。これに加え、業務トランザクションＴ１，Ｔ２間の引継ぎ（Ｔ１−→Ｔ２、但し、−→：引継）を示す業務トランザクションＴを定義することにより、業務トランザクションＴ１，Ｔ２の引継ぎの実行状況を管理することが可能となる。これにより、業務トランザクションＴ２実行中に障害が発生した場合、対応処理は、引継ぎ後の業務トランザクションＴ２のみに適用可能となる。
【００１４】
図１は本発明の一実施形態に係る業務トランザクション管理装置及びその周辺構成を示す模式図である。この業務トランザクション管理装置１０は、定義者端末２０、実行要求者端末３０及び各プロセスｐ１〜ｐ４に接続されている。なお、業務トランザクション管理装置１０は、ハードウェアとソフトウェアとの組合せ構成により実現可能であるが、ソフトウェアにより構成される部分は、対応する機能を実現させるためのプログラムが予め記憶媒体又はネットワークからインストールされて実現される。
【００１５】
ここで、業務トランザクション管理装置１０は、定義記憶部１１、実行状態記憶部１２、業務トランザクション定義部１３、業務トランザクション実行管理部１４及び業務終了通知受付部１５を備えている。
【００１６】
定義記憶部１１は、業務トランザクション定義部１３から読出／書込可能なメモリであり、図２に一例を示すように、各業務トランザクションタイプ名ｔｒ１，ｔｒ２毎にプロセス識別情報“ｐ１，ｐ２，ｐ３”“ｐ４”とプロセス実行順序“→”とが定義されたプロセス定義情報“ｐ１→ｐ２→ｐ３”“ｐ４”、及び各業務トランザクションｔｒ１，ｔｒ２間の引継関係“−→”が定義された引継定義情報“ｔｒ１−→ｔｒ２”が記憶されたものである。なお、図２中、プロセス定義情報“ｐ１→ｐ２→ｐ３”“ｐ４”、及び引継定義情報“ｔｒ１−→ｔｒ２”をまとめて、定義フローと称している。
【００１７】
ここで、トランザクションタイプｔｒ１は、プロセスｐ１，ｐ２，ｐ３を順番に実行する業務トランザクションとして定義されている。ｔｒ２は、プロセスｐ４のみを実行する業務トランザクションとして定義されている。ｔｒは、ｔｒ１を実行した後、ｔｒ２に引継ぎを行なう業務トランザクションとして定義されている。
【００１８】
実行状態記憶部１２は、業務トランザクション実行管理部１４から読出／書込可能なメモリであり、図３に一例を示すように、受付番号“１”、トランザクションタイプ名“ｔｒ”及び要求者ＩＤ“Ｕ１”の組毎に、現在管理中の実行プロセスを示すプロセス識別情報“ｐ４”及び実行状態情報“−”と、現在管理中の関連作業を示すプロセス識別情報“ｐ２”及び実行状態情報“ｄｏｎｅ”とが記憶される。
【００１９】
ここで、受付番号は、実行要求を受付済みの業務トランザクションの番号である。受付番号１は、トランザクションタイプｔｒのトランザクションであり、要求者Ｕ１によって要求されたものである。計算機の実行プロセスはｐ３までが完了し、ｐ４が起動される前であることを示している。現実の人間系の業務は、プロセスｐ２までが完了している。受付番号２，３の箇所も同様にして記載されている。なお、プロセス状態は、コンピュータの実行プロセスの実行状態情報であり、−（実行前）、ｐｒｏｃｅｓｓｉｎｇ（実行中）、ｃｏｍｐｌｅｔｅｄ（完了）の順に遷移する。業務状態は、人間系の業務（関連作業）の実行状態情報であり、−（実行前）、ｄｏｉｎｇ（処理中）、ｄｏｎｅ（完了）の順に遷移する。
【００２０】
業務トランザクション定義部１３は、定義者端末２０から受けたトランザクションタイプ名、プロセス定義情報及び引継定義情報を定義記憶部１１に書込む機能と、業務トランザクション実行管理部１４からの要求に応じて業務トランザクション定義部１３の内容を業務トランザクション実行管理部１４に送出する機能とをもっている。
【００２１】
業務トランザクション実行管理部１４は、現在管理中の実行プロセスを示すプロセス識別情報及び実行状態情報を実行状態記憶部１２に設定する機能と、現在管理中の関連作業を示すプロセス識別情報及び実行状態情報を実行状態記憶部１２に設定する機能と、プロセス定義情報、引継定義情報及び入力された実行状態情報に基づいて、実行状態記憶部１２内のプロセス識別情報及び実行状態情報を更新する機能と、実行管理中のプロセスをアボート処理するとき、全ての業務トランザクションのうち、当該実行管理中のプロセスを含む業務トランザクションのみをアボートする機能と、をもっている。
【００２２】
業務終了通知受付部１５は、各プロセスｐ１〜ｐ４におけるコンピュータシステム（ｐ１−１〜ｐ４−１）又は人間系の関連業務（ｐ１−２〜ｐ４−２）に関して業務終了通知を受け付ける機能と、この業務終了通知を業務トランザクション実行管理部１４に送出する機能とをもっている。
【００２３】
定義者端末２０は、通常のコンピュータ機能を有する端末であり、特に、業務トランザクションを定義する者（定義者）の操作により、トランザクションタイプ名毎に、プロセス定義情報及び引継定義情報を業務トランザクション定義部１３に送信する機能をもっている。
【００２４】
実行要求者端末３０は、通常のコンピュータ機能を有する端末であり、特に、業務トランザクションの実行を要求する者（要求者）の操作により、トランザクションタイプ名、要求者ＩＤ及び起動パラメータを含む実行要求を業務トランザクション実行管理部１４に送信する機能と、業務トランザクション実行管理部１４から終了通知を受信する機能とをもっている。
【００２５】
各プロセスｐ１〜ｐ４は、コンピュータの実行プロセスｐ１−１〜ｐ４−１及び人間系の関連業務（関連作業）ｐ１−２〜ｐ４−２から構成されており、各々業務終了通知を業務トランザクション管理装置１０に入力可能となっている。各コンピュータシステムの場合、プログラム実行の終了後、自動的に業務終了通知を業務トランザクション管理装置１０に入力すればよい。人間系の関連業務ｐ１−２〜ｐ４−２の場合、関連業務の担当者が図示しない操作端末の操作により、業務終了通知を業務トランザクション管理装置１０に入力すればよい。
【００２６】
次に、以上のように構成された業務トランザクション管理装置の動作を図４のフローチャートを用いて説明する。なお、以下の説明は、通常時の処理、障害時の処理、の順に述べる。
（通常時の処理）  システム上のプロセス及び実際の業務が順次起動。
【００２７】
予め定義者端末２０は、定義者の操作により、トランザクションタイプ名毎に、プロセス定義情報及び引継定義情報を含むフロー定義を業務トランザクション管理装置１０に送信する。
【００２８】
業務トランザクション管理装置１０においては、この受信内容に従って業務トランザクション定義部１３が、図２に示したように、トランザクションタイプ名、プロセス定義情報及び引継定義情報を定義記憶部１１に書込む。これにより、業務トランザクションの定義が完了し、業務トランザクションの管理が可能となる。
【００２９】
次に、業務トランザクションの管理動作について説明する。
実行要求者端末３０は、要求者の操作により、トランザクションタイプ名、要求者ＩＤ及び起動パラメータを含む実行要求を業務トランザクション管理装置１０に送信する。
【００３０】
業務トランザクション管理装置１０においては、図４に示すように、業務トランザクション実行管理部１４が、この実行要求を受け付けると（ＳＴ１）、受付番号を発番し（ＳＴ２）、受付番号、トランザクションタイプ名ｔｒ１、要求者ＩＤ、実行プロセスの最初のプロセス名ｐ１、業務の最初のプロセス名ｐ１を実行状態記憶部１２に設定する（ＳＴ３）。
【００３１】
続いて、業務トランザクション実行管理部１４は、実行対象のプロセス名を起動パラメータとして実行プロセスを起動し（ＳＴ４）、且つ実行状態記憶部１２のプロセス状態を”ｐｒｏｃｅｓｓｉｎｇ”に更新する（ＳＴ５）。
【００３２】
以下、業務トランザクション実行管理部１４は、実行プロセスに障害が発生したか否かを監視する（ＳＴ６）。なお、ＳＴ６で障害が発生した場合、後述するＳＴ１４に進む。ここでは障害が発生しないまま、実行プロセスが終了したとする。
【００３３】
業務トランザクション実行管理部１４は、終了した実行プロセスから結果データを受けると（ＳＴ７）、実行状態記憶部１２のプロセス状態を”ｃｏｍｐｌｅｔｅｄ”に更新し、業務状態を”ｄｏｉｎｇ”に更新する。
【００３４】
なお、業務トランザクション実行管理部１４は、適宜、業務の障害発生を監視し（ＳＴ９）、業務終了通知を監視し（ＳＴ１０）、業務終了通知を受けていればＳＴ１１に進んで実行状態記憶部１２を更新する。この更新は、業務状態を”ｄｏｎｅ”にし、実行プロセスが、業務の次のプロセスでプロセス状態が”ｃｏｍｐｌｅｔｅｄ”であるか、業務の次の次以降のプロセスであるなら、業務を現在の次のプロセス名に変えて、業務状態を”ｄｏｉｎｇ”にすればよい。
【００３５】
次に、業務トランザクション実行管理部１４は、未処理の実行プロセスが有るか否かを判定し（ＳＴ１２）、未処理の実行プロセスがあればプロセス名を更新してステップＳＴ４に戻る。
【００３６】
一方、ステップＳＴ１２の判定の結果、未処理の実行プロセスが無いとき、業務トランザクション実行管理部１４は、未処理の業務が有るか否かを判定し（ＳＴ１３）、未処理の業務があればプロセス名を更新してステップＳＴ９に戻る。
【００３７】
以上のステップＳＴ１〜ＳＴ１３に述べたように、実行プロセス及び業務のそれぞれについて、プロセス名と実行状態とを管理することにより、業務トランザクションを管理することができる。
【００３８】
次に、ステップＳＴ６、ＳＴ９にて障害の発生があった時の動作を述べる。
（障害時の処理）
ステップＳＴ６の判定の結果、障害が発生した場合、それまでの処理がアボート（中止）され、再実行される。但し、業務トランザクション実行管理部１４は、現在のプロセスが業務トランザクション間の引継ぎ前であるか否かを判定し（ＳＴ１４）、引継ぎ前である場合は、現在のプロセスと同じ業務トランザクション内のそれまでの処理をアボートして終了する。
【００３９】
また、業務トランザクション間の引継ぎが行なわれていた場合には、引継ぎ前の業務トランザクションはアボートされず、引継ぎ後の業務トランザクションの最初の実行プロセスまでアボートしてステップＳＴ４に戻る（ＳＴ１６）。
【００４０】
また、ステップＳＴ９の判定の結果、障害が発生した場合も前述したステップＳＴ１４〜ＳＴ１６と同様に、引継ぎ前には現在の業務と同じ業務トランザクション内のそれまでの処理をアボートして終了し（ＳＴ１７，ＳＴ１８）、引継ぎ後には、引継ぎ後の業務トランザクションの最初の業務までをアボートしてステップＳＴ４に戻る（ＳＴ１７，ＳＴ１９）。ステップＳＴ１７〜ＳＴ１９のアボート対象は、ＳＴ１４〜ＳＴ１６の実行プロセスとは異なり、業務である。
【００４１】
なお、障害時の処理は、アボート処理に限らず、予め設定した障害時の対応処理を起動する構成としてもよい。この場合、例えば予め定義記憶部１１のトランザクションタイプ名毎に、障害時の対応処理フロー（例、ａ→ｂ→ｃなど：ａ，ｂ，ｃは任意の対応処理）を定義しておけばよい。
【００４２】
以上説明したように本実施形態によれば、各業務トランザクションの引継関係を定義したことにより、業務トランザクション間の区切れを明確にし、実行管理中のプロセスをアボート処理する際には、全ての業務トランザクションのうち、実行管理中のプロセスを含む業務トランザクションのみをアボートできるようにしたので、障害発生時に引継ぎ前の業務に遡らない障害時処理を行なうことができる。これにより、現実の業務のうち、全体のアボート処理が不適切な業務に対し、処理手続きに即した適切な管理を実現することができる。
【００４３】
なお、上記各実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク（フロッピー（登録商標）ディスク、ハードディスクなど）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤなど）、光磁気ディスク（ＭＯ）、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【００４４】
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
【００４５】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているＯＳ（オペレーティングシステム）や、データベース管理ソフト、ネットワークソフト等のＭＷ（ミドルウェア）等が本実施形態を実現するための各処理の一部を実行しても良い。
【００４６】
さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、ＬＡＮやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【００４７】
また、記憶媒体は１つに限らず、複数の媒体から本実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
【００４８】
尚、本発明におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するものであって、パソコン等の１つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
【００４９】
また、本発明におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【００５０】
本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。
【００５１】
【発明の効果】
以上説明したように本発明によれば、各業務トランザクションの引継関係を定義したことにより、業務トランザクション間の区切れを明確にし、実行管理中のプロセスをアボート処理する際には、全ての業務トランザクションのうち、実行管理中のプロセスを含む業務トランザクションのみをアボートできるようにしたので、全体のアボート処理が不適切な業務に対し、適切な管理を実現することができる。
【図面の簡単な説明】
【図１】本発明の一実施形態に係る業務トランザクション管理装置及びその周辺構成を示す模式図である。
【図２】同実施形態における定義記憶部の構成を示す模式図である。
【図３】同実施形態における実行状態記憶部の構成を示す模式図である。
【図４】同実施形態における動作を説明するためのフローチャートである。
【符号の説明】
１０…業務トランザクション管理装置、１１…定義記憶部、１２…実行状態記憶部、１３…業務トランザクション定義部、１４…業務トランザクション実行管理部、１５…業務終了通知受付部、２０…定義者端末、３０…実行要求者端末、ｐ１〜ｐ４…各プロセス、ｔｒ１，ｔｒ２，ｔｒ…トランザクションタイプ名、Ｕ１〜Ｕ３…要求者ＩＤ。
【図１】
2005031914.tif 000003
【図２】
2005031914.tif 000004
【図３】
2005031914.tif 000005
【図４】
2005031914.tif 000006