[go: up one dir, main page]

JP4334251B2 - Transaction execution management program and transaction processing apparatus - Google Patents

Transaction execution management program and transaction processing apparatus Download PDF

Info

Publication number
JP4334251B2
JP4334251B2 JP2003070138A JP2003070138A JP4334251B2 JP 4334251 B2 JP4334251 B2 JP 4334251B2 JP 2003070138 A JP2003070138 A JP 2003070138A JP 2003070138 A JP2003070138 A JP 2003070138A JP 4334251 B2 JP4334251 B2 JP 4334251B2
Authority
JP
Japan
Prior art keywords
transaction
execution
result
constituting
processes
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.)
Expired - Fee Related
Application number
JP2003070138A
Other languages
Japanese (ja)
Other versions
JP2004280397A (en
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2003070138A priority Critical patent/JP4334251B2/en
Publication of JP2004280397A publication Critical patent/JP2004280397A/en
Application granted granted Critical
Publication of JP4334251B2 publication Critical patent/JP4334251B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、コンピュータに、複数の処理で構成されたトランザクションに対する実行管理を実施させるトランザクション実行管理プログラムおよび同トランザクションの処理を実行するトランザクション処理装置に関する。
【0002】
【従来の技術】
互いに関連する複数の処理を便宜的に一つの塊(トランザクション)と見なして、このトランザクションを構成する各処理の実行管理を行うトランザクション管理機構は、例えば非特許文献1に示すように、RDBMS(リレーショナルデータベース・管理システム)などのコンピュータシステムの実行管理に主に用いられてきた。
【0003】
例えば、図6に示すように、金融機関等において、顧客口座1から例えばガス料金等の公共料金Yをガス会社口座2へ振替える場合、顧客口座1の残高確認R[A]、残高から公共料金Yを減算した金額を顧客口座1に書込む結果書込W[A]、ガス会社口座2の残高確認R[X]、残高に公共料金Yを加算した金額をガス会社口座2に書込む結果書込W[X]との4つの処理でトランザクションtrが構成されている。
【0004】
tr=R[A]→W[A]→R[X]→W[X]
このような環境下では、4個の処理R[A]〜W[X]のうち、一つの処理でも正常に終了しないと、正常に終了している処理の実行結果を取消す必要がある。すなわち、一般に、トランザクションtrはそのトランザクションtrを構成する全ての処理R[A]〜W[X]が正常に完了するか(コミット)、全ての処理R[A]〜W[X]が何も行われないか(アボート)のいずれかがトランザクションとしての終結方法であった。
【0005】
したがって、通常、全ての処理が正常に終了すればトランザクション管理機構が自動的にすべての処理に対してコミットを出し、いずれかの処理が正常に終了しなかった場合にアボートを出すのが一般的である。
【0006】
また、トランザクションを構成する各処理の実行結果において、正常に終了した処理と、正常に終了しなかった処理とが混在した場合においては、トランザクション全体をコミット又はアボートにする指示を、トランザクション要求者あるいはアプリケーションプログラムが指定できる場合もある。例えば、リレーショナルデータベース等である。但し、この場合にも全ての処理をコミットするかアボートするかのいずれかを指定できるのみである。
【0007】
また、非特許文献2には、例えば旅行情報等の各種サービスを、インターネットを介して収集又は提供するWebサービスの技術が記載されている。
【0008】
【非特許文献1】
メディアミックス・プロジェクト著、株式会社イシサキ編 「図解雑学 データベース」、ナツメ社 2002.3、p180-p187
【0009】
【非特許文献2】
(株)東芝 西澤、早瀬、山田、矢野、山本著、「Webサービス設計・分析ガイド −オブジェクト指向によるモデリングの手引き−」、 ソフトバンクパブリッシング(株) 2002.12、p7-p11
【0010】
【発明が解決しようとする課題】
しかしながら、上述したトランザクション全体をコミット又はアボートにするモデルは、非特許文献2に記載された例えば旅行情報等の各種サービスを、インターネットを介して収集又は提供するWebサービスに適用した場合、必ずしも都合の良いものではない。
【0011】
第1の問題はシステム上の処理状況の管理だけでは不十分である点である。例えば、ある顧客に対する商品の販売処理をWebサービスのプロセス上で処理できたとしても、実際に顧客に対する商品の配送が終了するまでは業務は終了したとはいえない。したがって、この商品の配送をも含めた状態の管理が必要である。
【0012】
第2の問題は実際の(人間系を含めた)業務を管理しようとすると、コミット/アボートといった二者択一の考え方だけでは不十分な場合が発生する点である。例えば、現実世界において、図7に示すように、[タクシー予約]、[レストラン予約]、[ホテル予約]という3つの処理を一つのトランザクションtrに組込んだ場合を想定する。
【0013】
この場合、前述のトランザクションの理論によれば、原則として、3つの処理において正常に予約できた場合のみ、このトランザクションはコミットされ、トランザクションを実行要求した顧客に対して、各予約結果を通知する。
【0014】
しかしながら顧客によっては、レストランだけ予約ができた場合それを受入れることもあるし、なにも予約しない(アボート)ことにすることもある。つまり,当初の要求に対するそれぞれの結果に応じて、トランザクションの各処理の実行結果を受入れるか否かをトランザクションの実行要求者(顧客)が判断するのが一般的である。
【0015】
本発明はこのような事情に鑑みてなされたものであり、トランザクションの実行要求者が各処理の実行結果を選択的に受入れることができ、トランザクションの実行要求者の多様な要求を実現でき、現実世界での判断・終結と同様の処理を可能とし、トランザクションの実行要求者に対するサービスを大幅に向上できるトランザクション実行管理プログラムを提供することを目的とする。
【0016】
【課題を解決するための手段】
上記課題を解消するために、本発明は、コンピュータに、操作指定されたトランザクションを構成する各処理の実行を処理実行部に指示して実行させる機能と、トランザクションを構成する各処理の実行結果に基づいて各処理を終結させる機能とを実現させるためのトランザクション実行管理プログラムである。
【0017】
さらに、このトランザクション実行管理プログラムは、コンピュータに、処理実行部においてトランザクションに含まれる全ての処理が終了したとき各処理の実行結果を出力させる機能と、各処理の実行結果の出力後に操作指定された終結方法を入力する機能とを実現させる。また、各処理を終結する機能は、入力された終結方法に従って該当トランザクションを構成する各処理を終結させる。
【0018】
このように構成されたトランザクション実行管理プログラムにおいては、トランザクションの実行要求者にて操作指定されたトランザクションを構成する各処理は処理実行部で順次実行され、各処理の実行結果が例えば表示出力される。トランザクションの実行要求者は、表示出力された各処理の実行結果を参照にして、該当トランザクションに対する終結方法を指定する。この終結方法に従って該当トランザクションが終結される。
【0019】
この終結方法としては、トランザクションを構成する一部の処理の実行結果が目的結果であり他の処理の実行結果が目的結果でないとき、トランザクションを構成する目的結果が得られた処理に対する実行結果を確定し目的結果が得られない処理に対する実行結果を取消す終結方法、トランザクションを構成する一部の処理の実行結果が目的結果であり他の処理の実行結果が目的結果でないとき、トランザクションを構成する全ての処理の実行結果を取消す終結方法、トランザクションを構成する全部の処理の実行結果が目的結果であるとき、トランザクションを構成する全ての処理の実行結果を確定する終結方法等が実現可能である。
【0020】
【発明の実施の形態】
以下、本発明の一実施形態を図面を用いて説明する。
図1は本発明の一実施形態に係るトランザクション実行管理プログラムが適用されるトランザクション実行管理装置の概略構成を示すブロック図である。
【0021】
このトランザクション実行管理装置3は、トランザクションの実行要求者であるユーザ4の指定するトランザクションの各処理6の実行を処理実行部5に対して指示し、各処理6の実行結果を表示器7に表示し、ユーザ4が指定する終結方法に従って、該当トランザクションを終結させる。
【0022】
次に、各部の具体的構成を順を追って説明していく。
トランザクション定義部8は、例えばこのトランザクション実行管理装置3の管理者等の設定者9が行う設定指示に基づいて、各トランザクションをトランザクション定義テーブル10に設定する。このトランザクション定義テーブル10内には、図2に示すように、トランザクション11毎に、該当トランザクション11で実行する複数の処理6が記憶されている。この例では、tr1、tr2という2種類のトランザクション11が定義されている。tr1のトランザクション11はp1、p2、p3という3つの処理6を順次実行するトランザクションであり、tr2トランザクション11はp3、p4の各処理6を並列に実行するトランザクションである。
【0023】
実行トランザクション指定部12は、ユーザ4が指定したトランザクション11をトランザクション定義テーブル10から読出して、トランザクション実行状況テーブル13へトランザクション実行番号を付して設定すると共にトランザクション実行指示部14へ送出する。
【0024】
トランザクション実行状況テーブル13内には、図3に示すように、トランザクション実行番号毎に、tr1、tr2等のトランザクション11のトランザクション名(ID)、該当トランザクション11を構成する各処理6の最新の実行状況15が記憶されている。例えば、トランザクション実行番号「1」のtr3のトランザクション11においては、p3の処理6が「実行済」であり、p4の処理6が「実行中」であることを示す。
【0025】
トランザクション実行指示部14は、トランザクション定義テーブル10から読出されたトランザクション11の実行指示を処理実行部5へ送出する。処理実行部5はトランザクション11の各処理6を指定された順番で実行していく。
【0026】
トランザクション実行監視部15は、処理実行部5における各トランザクション11における各処理6の実行状態を一定時間間隔で検出して、トランザクション実行状況テーブル13内の該当トランザクション11における各処理6の実行状態15を更新する。さらに、このトランザクション実行監視部15は、実行中のトランザクション11を構成する全部の処理6の実行状態が「実行済」になると、該当トランザクション11の各処理6の実行結果をトランザクション実行結果テーブル17へ書込む。
【0027】
トランザクション実行結果テーブル17内には、図4に示すように、トランザクション実行番号毎に、tr1、tr2等のトランザクション11のトランザクション名(ID)、該当トランザクション11を構成する各処理6の実行結果18が書込まれている。例えば、トランザクション実行番号「1」のトランザクション11におけるp3の処理6の処理結果18は目的結果「OK」であり、p4の処理6の処理結果18は目的結果でない「NG」である。
【0028】
実行結果通知部19は、トランザクション実行結果テーブル17に書込まれている各トランザクション11の各処理6の実行結果18を表示器7に表示出力する。
【0029】
終結方法入力部20は、表示器7に表示されたトランザクション11の各処理6の実行結果18を確認したユーザ4が入力した終結方法をトランザクション終結部21へ転送する。トランザクション終結部21は、該当トランザクション11を指定された終結方法で終結させる。
【0030】
ここで、ユーザ4が指定するトランザクション11に対する終結方法の例を説明する。
【0031】
(a) トランザクション11を構成する一部の処理6の実行結果18が目的結果[OK]であり他の処理6の実行結果18が目的結果でない[NG]であるとき、トランザクション11を構成する目的結果が得られた処理6に対する実行結果18を確定し目的結果が得られない処理6に対する実行結果18を取消す。
【0032】
(b) トランザクション11を構成する一部の処理6の実行結果18が目的結果[OK]であり他の処理の実行結果18が目的結果でない[NG]であるとき、トランザクション11を構成する全ての処理6の実行結果18を取消す。
【0033】
(c) トランザクションを構成する全部の処理6の実行結果18が目的結果[OK]であるとき、トランザクション11を構成する全ての処理6の実行結果18を確定する。
【0034】
(d) トランザクション11を構成する全部の処理6の実行結果18が目的結果でない[NG]であるとき、トランザクション11を構成する全ての処理6の実行結果18を取消す。
【0035】
(e) トランザクション11を構成する目的結果[OK]の処理6のうち任意に指定した処理6の実行結果18のみを確定し、他の全ての処理6の実行結果18を取消す。
【0036】
このように、ユーザ4は、表示器7に表示されたトランザクション11の各処理6の実行結果18を参考にして、該当トランザクション11を任意の終結方法で終結させることが可能となる。
【0037】
コンピュータ等の一種の情報処理装置で構成されたトランザクション実行管理装置3内に設けられたHDD等の記憶装置22内にトランザクション実行管理プログラム23が記憶されている。このコンピュータ等のトランザクション実行管理装置3は、このトランザクション実行管理プログラム23を起動させることによって、上述した各部8、12、14、16、19、20、21が実現される。
【0038】
そして、このトランザクション実行管理装置3内に実現された上述した各部8、12、14、16、19、20、21は、図5に示す流れ図に従って、トランザクション11に対する実行管理を実行する。
【0039】
ユーザ4から実行すべきトランザクション11のトランザクション名(ID)が入力されると(S1)、このトランザクション11に対してトランザクション番号を発行して(S2)、このトランザクション11をトランザクション定義テーブル10から読出して、先に発行したトランザクション番号を付して、トランザクション実行状況テーブル13に設定する(S3)。そして、該当トランザクション11を起動する(S4)。
【0040】
S5にて、一つの処理6の実行が終了すると、トランザクション実行状況テーブル13内の対応トランザクション11の該当処理6に終了を示す「実行済」の実行状況16を書込む(S6)。そして、トランザクション実行状況テーブル13内の該当トランザクション11を構成する全部の処理6の実行状況16が終了を示す「実行済」になった場合(S7)、トランザクション実行結果テーブル17に該当トランザクション11の各処理6の実行結果18を書込む(S8)。そして、該当トランザクション11の各処理6の実行結果18を表示器7に表示出力する(S9)。
【0041】
ユーザ4が該当トランザクション11に対する終結方法を入力すると(S10)、この指定された終結方法で該当トランザクション11を終結させる(S11)。
【0042】
このように構成されたトランザクション実行管理プログラムが適用されるトランザクション実行管理装置3においては、トランザクション11の実行要求者であるユーザ4にて操作指定されたトランザクション11を構成する各処理6は処理実行部65で順次実行され、トランザクション11を構成する全部の処理6に対する実行が終了すると、各処理6の実行結果18が表示器7に表示出力される。
【0043】
ユーザ4は、表示器7に表示出力されたトランザクション11の各処理6の実行結果18を参照にして、該当トランザクション11に対する終結方法を指定すると、この終結方法に従って該当トランザクション11が終結される。
【0044】
このように、ユーザ4が該当トランザクション11に対する終結方法を任意に指定可能であるので、現実の世界での要求の終結方法と同様の終結が可能であり、このような必要性のある場合には効果がある。
【0045】
例えば、Webサービスが普及するとアプリケーションはいくつかのWebサービスの提供を受けて、全体としての処理を構成することになる。そして、それぞれのWebサービスは、図7に示したように、トランザクション11の各処理6を「タクシー予約」、「レストラン予約」、「ホテル予約」等の現実の業務に相当することを考えることができる。このような場合には、それぞれの予約結果(実行結果)に応じてタクシーのみを予約するのか、ホテルのみ予約するのか、などを自由に指定でき、Webサービスのユーザ4にとって、汎用性が広く、非常に便利である。
【0046】
なお、上記各実施形態で説明した各構成要素は、自由に組合せてもよく、また複数の要素に分割してもよい。また、実施形態におけるトランザクション実行管理プログラム23は、複数のコンピュータ上に分散され、互いに連携しつつ動作してもよい。
【0047】
さらに、トランザクション実行管理プログラム23は通信媒体により伝送してコンピュータに適用可能である。トランザクション実行管理プログラム23を読み込んだコンピュータは、トランザクション実行管理プログラム23によって動作が制御され、上述した機能を実現する。
【0048】
【発明の効果】
以上説明したように、本発明のトランザクション実行管理プログラムにおいては、トランザクションの実行要求者が各処理の実行結果を選択的に受入れることができ、トランザクションの実行要求者の多様な要求を実現でき、現実世界での判断・終結と同様の処理を可能とし、トランザクションの実行要求者に対するサービスを大幅に向上できる。
【図面の簡単な説明】
【図1】 本発明の一実施形態のトランザクション実行管理プログラムが適用されるトランザクション実行管理装置の概略構成を示すブロック図
【図2】 同トランザクション実行管理装置内に形成されたトランザクション定義テーブルの記憶内容を示す図
【図3】 同トランザクション実行管理装置内に形成されたトランザクション実行状況テーブルの記憶内容を示す図
【図4】 同トランザクション実行管理装置内に形成されたトランザクション実行結果テーブルの記憶内容を示す図
【図5】 同トランザクション実行管理装置におけるトランザクション実行管理動作を示す流れ図
【図6】 従来のトランザクション処理動作を示す図
【図7】 現実世界のWebサービスにトランザクションを適用した例を示す図
【符号の説明】
3…トランザクション実行管理装置、4…ユーザ、5…処理実行部、6…処理、7…表示器、8…トランザクション定義部、10…トランザクション定義テーブル、11…トランザクション、12…トランザクション指定部、13…トランザクション実行状況テーブル、14…トランザクション実行指示部、16…トランザクション実行監視部、17…トランザクション実行結果テーブル、18…実行結果、20…終結入力部、21…トランザクション終結部、23…トランザクション実行管理プログラム
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a transaction execution management program for causing a computer to execute execution management for a transaction composed of a plurality of processes, and a transaction processing apparatus for executing the transaction processing .
[0002]
[Prior art]
For example, as shown in Non-Patent Document 1, a transaction management mechanism that regards a plurality of processes related to each other as a single block (transaction) for convenience and manages the execution of each process constituting this transaction is an RDBMS (relational It has been mainly used for execution management of computer systems such as databases and management systems.
[0003]
For example, as shown in FIG. 6, in a financial institution or the like, when a public fee Y such as a gas fee is transferred from a customer account 1 to a gas company account 2, the balance confirmation R [A] of the customer account 1 Write the result of subtracting the charge Y into the customer account 1 W [A], the balance confirmation R [X] of the gas company account 2, and the amount obtained by adding the utility charge Y to the balance is written into the gas company account 2 The transaction tr is composed of four processes with the result writing W [X].
[0004]
tr = R [A] → W [A] → R [X] → W [X]
Under such an environment, if one of the four processes R [A] to W [X] does not end normally, it is necessary to cancel the execution result of the process that has ended normally. That is, generally, in the transaction tr, all the processes R [A] to W [X] constituting the transaction tr are normally completed (commit), or all the processes R [A] to W [X] are nothing. Either it was not done (Abort) was the transaction termination method.
[0005]
Therefore, generally, if all processing ends normally, the transaction management mechanism automatically issues a commit to all processing, and if any processing does not end normally, an abort is generally issued. It is.
[0006]
In addition, in the execution result of each process that constitutes a transaction, when a process that ends normally and a process that does not end normally coexist, an instruction to commit or abort the entire transaction is sent to the transaction requester or In some cases, an application program can be specified. For example, a relational database. In this case, however, it is only possible to specify whether to commit or abort all processing.
[0007]
Non-Patent Document 2 describes Web service technology that collects or provides various services such as travel information via the Internet.
[0008]
[Non-Patent Document 1]
By Media Mix Project, edited by Ishizaki Co., Ltd. “Illustration Trilogy Database”, Natsume 2002.3, p180-p187
[0009]
[Non-Patent Document 2]
Toshiba Corporation Nishizawa, Hayase, Yamada, Yano, Yamamoto, “Web Service Design and Analysis Guide -Object-oriented Modeling Guide-”, Softbank Publishing Co., Ltd. 2002.12, p7-p11
[0010]
[Problems to be solved by the invention]
However, the above-described model for committing or aborting the entire transaction is not always convenient when various services such as travel information described in Non-Patent Document 2 are applied to Web services that are collected or provided via the Internet. Not good.
[0011]
The first problem is that the management of the processing status on the system is not sufficient. For example, even if the sale processing of a product for a certain customer can be processed on the Web service process, the business cannot be said to be finished until the delivery of the product to the customer is actually finished. Therefore, it is necessary to manage the state including the delivery of this product.
[0012]
The second problem is that when an actual business (including a human system) is managed, an alternative idea such as commit / abort may not be sufficient. For example, in the real world, as shown in FIG. 7, it is assumed that three processes of [taxi reservation], [restaurant reservation], and [hotel reservation] are incorporated in one transaction tr.
[0013]
In this case, according to the above-described transaction theory, in principle, this transaction is committed only when a normal reservation can be made in the three processes, and each reservation result is notified to the customer who requested execution of the transaction.
[0014]
However, depending on the customer, if only a restaurant can be reserved, it may be accepted, or no reservation may be made (aborted). In other words, the transaction execution requester (customer) generally determines whether or not to accept the execution result of each process of the transaction according to each result for the initial request.
[0015]
The present invention has been made in view of such circumstances, and the execution requester of the transaction can selectively receive the execution result of each process, and can realize various requests of the execution requester of the transaction. It is an object of the present invention to provide a transaction execution management program that enables processing similar to the determination / termination in the world and can greatly improve the service to the transaction execution requester.
[0016]
[Means for Solving the Problems]
In order to solve the above-described problems, the present invention provides a function for causing a computer to instruct a process execution unit to execute each process constituting an operation-designated transaction and an execution result of each process constituting the transaction. This is a transaction execution management program for realizing a function for terminating each processing based on the above.
[0017]
In addition, the transaction execution management program has a function that causes the computer to output the execution result of each process when all processes included in the transaction are completed in the process execution unit, and an operation is designated after the execution result of each process is output. The function to input the termination method is realized. Further, the function for terminating each process terminates each process constituting the corresponding transaction in accordance with the inputted termination method.
[0018]
In the transaction execution management program configured as described above, each process constituting the transaction designated by the transaction execution requester is sequentially executed by the process execution unit, and the execution result of each process is displayed and output, for example. . The transaction execution requester refers to the execution result of each process displayed and output, and designates a closing method for the transaction. The transaction is terminated according to this termination method.
[0019]
As a closing method, when the execution results of some processes that make up a transaction are the target results and the execution results of other processes are not the target results, the execution results for the processes that have obtained the target results that make up the transaction are confirmed. Termination method that cancels the execution result for a process for which the target result cannot be obtained, and when the execution result of some processes constituting the transaction is the target result and the execution result of the other processes is not the target result, all the processes constituting the transaction A termination method for canceling the execution results of processes, a termination method for determining the execution results of all processes constituting a transaction when the execution results of all processes constituting the transaction are the target results, and the like can be realized.
[0020]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
FIG. 1 is a block diagram showing a schematic configuration of a transaction execution management apparatus to which a transaction execution management program according to an embodiment of the present invention is applied.
[0021]
The transaction execution management apparatus 3 instructs the process execution unit 5 to execute each process 6 specified by the user 4 who is the transaction execution requester, and displays the execution result of each process 6 on the display 7. Then, according to the termination method designated by the user 4, the corresponding transaction is terminated.
[0022]
Next, the specific configuration of each unit will be described in order.
The transaction definition unit 8 sets each transaction in the transaction definition table 10 based on a setting instruction given by a setting person 9 such as an administrator of the transaction execution management apparatus 3. In the transaction definition table 10, as shown in FIG. 2, for each transaction 11, a plurality of processes 6 that are executed in the transaction 11 are stored. In this example, two types of transactions 11 are defined, tr1 and tr2. The transaction 11 of tr1 is a transaction that sequentially executes three processes 6 such as p1, p2, and p3. The tr2 transaction 11 is a transaction that executes the processes 6 of p3 and p4 in parallel.
[0023]
The execution transaction specifying unit 12 reads the transaction 11 specified by the user 4 from the transaction definition table 10, assigns and sets a transaction execution number to the transaction execution status table 13, and sends it to the transaction execution instruction unit 14.
[0024]
In the transaction execution status table 13, as shown in FIG. 3, for each transaction execution number, the transaction name (ID) of the transaction 11 such as tr1, tr2, etc., and the latest execution status of each process 6 constituting the transaction 11 are shown. 15 is stored. For example, in the transaction 11 of tr3 having the transaction execution number “1”, the process 6 of p3 is “executed” and the process 6 of p4 is “being executed”.
[0025]
The transaction execution instruction unit 14 sends an execution instruction for the transaction 11 read from the transaction definition table 10 to the process execution unit 5. The process execution unit 5 executes the processes 6 of the transaction 11 in the designated order.
[0026]
The transaction execution monitoring unit 15 detects the execution state of each process 6 in each transaction 11 in the process execution unit 5 at regular time intervals, and determines the execution state 15 of each process 6 in the transaction 11 in the transaction execution status table 13. Update. Further, when the execution state of all the processes 6 constituting the transaction 11 being executed becomes “executed”, the transaction execution monitoring unit 15 sends the execution result of each process 6 of the transaction 11 to the transaction execution result table 17. Write.
[0027]
In the transaction execution result table 17, as shown in FIG. 4, for each transaction execution number, the transaction name (ID) of the transaction 11 such as tr 1, tr 2, and the execution result 18 of each process 6 constituting the transaction 11 are stored. It is written. For example, the process result 18 of the process 3 of p3 in the transaction 11 with the transaction execution number “1” is the target result “OK”, and the process result 18 of the process 6 of p4 is “NG” which is not the target result.
[0028]
The execution result notifying unit 19 displays and outputs the execution result 18 of each process 6 of each transaction 11 written in the transaction execution result table 17 on the display unit 7.
[0029]
The termination method input unit 20 transfers the termination method input by the user 4 who has confirmed the execution result 18 of each process 6 of the transaction 11 displayed on the display 7 to the transaction termination unit 21. The transaction termination unit 21 terminates the transaction 11 with a designated termination method.
[0030]
Here, an example of a closing method for the transaction 11 designated by the user 4 will be described.
[0031]
(A) When the execution result 18 objective result of the part of the processing 6 forming the transaction 11 [OK] a and the execution result 18 of other processing 6 is not the objective results [NG], the purpose of constituting a transaction 11 The execution result 18 for the process 6 in which the result is obtained is confirmed, and the execution result 18 for the process 6 in which the target result is not obtained is canceled.
[0032]
(B) When the execution result 18 The purpose of some of the process 6 constituting the transaction 11 Results [OK] a is another execution of the processing result 18 is not the objective results [NG], all constituting the transaction 11 Cancels the execution result 18 of the process 6.
[0033]
(C) When the execution results 18 of all the processes 6 constituting the transaction are the target result [OK], the execution results 18 of all the processes 6 constituting the transaction 11 are determined.
[0034]
(D) When the execution results 18 of all the processes 6 constituting the transaction 11 are not the target result [NG] , the execution results 18 of all the processes 6 constituting the transaction 11 are canceled.
[0035]
(E) Only the execution result 18 of the arbitrarily designated process 6 among the processes 6 of the target result [OK] constituting the transaction 11 is confirmed, and the execution results 18 of all other processes 6 are canceled.
[0036]
In this way, the user 4 can terminate the transaction 11 by any termination method with reference to the execution result 18 of each process 6 of the transaction 11 displayed on the display 7.
[0037]
A transaction execution management program 23 is stored in a storage device 22 such as an HDD provided in the transaction execution management device 3 constituted by a kind of information processing device such as a computer. The transaction execution management device 3 such as this computer activates the transaction execution management program 23 to realize the above-described units 8, 12, 14, 16, 19, 20, and 21.
[0038]
Then, each of the above-described units 8, 12, 14, 16, 19, 20, and 21 realized in the transaction execution management apparatus 3 executes execution management for the transaction 11 according to the flowchart shown in FIG.
[0039]
When the transaction name (ID) of the transaction 11 to be executed is input from the user 4 (S1), a transaction number is issued to the transaction 11 (S2), and the transaction 11 is read from the transaction definition table 10. The previously issued transaction number is assigned and set in the transaction execution status table 13 (S3). Then, the corresponding transaction 11 is activated (S4).
[0040]
When the execution of one process 6 is completed in S5, an “executed” execution status 16 indicating completion is written in the corresponding process 6 of the corresponding transaction 11 in the transaction execution status table 13 (S6). When the execution status 16 of all the processes 6 constituting the transaction 11 in the transaction execution status table 13 is “executed” indicating completion (S7), each transaction 11 in the transaction execution result table 17 is displayed in the transaction execution result table 17. The execution result 18 of process 6 is written (S8). Then, the execution result 18 of each process 6 of the transaction 11 is output and displayed on the display 7 (S9).
[0041]
When the user 4 inputs a termination method for the transaction 11 (S10), the transaction 11 is terminated by the designated termination method (S11).
[0042]
In the transaction execution management apparatus 3 to which the transaction execution management program configured as described above is applied, each process 6 constituting the transaction 11 designated by the user 4 who is the execution requester of the transaction 11 is a process execution unit. When the execution for all the processes 6 constituting the transaction 11 is completed, the execution result 18 of each process 6 is displayed on the display unit 7.
[0043]
When the user 4 refers to the execution result 18 of each process 6 of the transaction 11 displayed on the display device 7 and designates a termination method for the transaction 11, the transaction 11 is terminated according to the termination method.
[0044]
In this way, since the user 4 can arbitrarily designate the termination method for the transaction 11, it is possible to terminate the request in the same way as the request termination method in the real world. effective.
[0045]
For example, when a web service becomes widespread, an application receives provision of several web services and configures processing as a whole. Each Web service may consider that each process 6 of the transaction 11 corresponds to actual work such as “taxi reservation”, “restaurant reservation”, and “hotel reservation” as shown in FIG. it can. In such a case, according to each reservation result (execution result), whether to reserve only a taxi or only a hotel can be freely specified. Very convenient.
[0046]
In addition, each component demonstrated by each said embodiment may be combined freely, and may be divided | segmented into a some element. Further, the transaction execution management program 23 in the embodiment may be distributed over a plurality of computers and operate in cooperation with each other.
[0047]
Further, the transaction execution management program 23 can be applied to a computer by being transmitted through a communication medium. The operation of the computer that has read the transaction execution management program 23 is controlled by the transaction execution management program 23 to realize the above-described functions.
[0048]
【The invention's effect】
As described above, in the transaction execution management program of the present invention, the transaction execution requester can selectively accept the execution result of each process, and various requests of the transaction execution requester can be realized. It is possible to perform the same processing as the determination / termination in the world, and the service for the requester of the transaction can be greatly improved.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a schematic configuration of a transaction execution management apparatus to which a transaction execution management program according to an embodiment of the present invention is applied. FIG. 2 is a storage content of a transaction definition table formed in the transaction execution management apparatus. FIG. 3 is a view showing the storage contents of a transaction execution status table formed in the transaction execution management apparatus. FIG. 4 is a view showing storage contents of a transaction execution result table formed in the transaction execution management apparatus. FIG. 5 is a flowchart showing transaction execution management operations in the transaction execution management apparatus. FIG. 6 is a diagram showing conventional transaction processing operations. FIG. 7 is a diagram showing an example of applying a transaction to a real-world Web service. Explanation of]
DESCRIPTION OF SYMBOLS 3 ... Transaction execution management apparatus, 4 ... User, 5 ... Process execution part, 6 ... Process, 7 ... Display, 8 ... Transaction definition part, 10 ... Transaction definition table, 11 ... Transaction, 12 ... Transaction designation | designated part, 13 ... Transaction execution status table, 14 ... Transaction execution instruction section, 16 ... Transaction execution monitoring section, 17 ... Transaction execution result table, 18 ... Execution result, 20 ... Termination input section, 21 ... Transaction termination section, 23 ... Transaction execution management program

Claims (2)

コンピュータに、操作指定されたトランザクションを構成する各処理の実行を処理実行部に指示して実行させる機能と、前記トランザクションを構成する各処理の実行結果に基づいて各処理を終結させる機能とを実現させるためのトランザクション実行管理プログラムにおいて、
前記コンピュータに、前記処理実行部において前記トランザクションに含まれる全ての処理が終了したとき各処理の実行結果を出力させる機能と、前記各処理の実行結果の出力後に操作指定された終結方法を入力する機能とを実現させ、
前記各処理を終結する機能は、前記入力された終結方法に従って該当トランザクションを構成する各処理を終結させることを特徴とし、
前記操作指定される終結方法は、
(a)前記トランザクションを構成する一部の処理の実行結果が目的結果であり、他の処理の実行結果が目的結果でないとき、前記トランザクションを構成する目的結果が得られた処理に対する実行結果を確定し、前記目的結果が得られない処理に対する実行結果を取消す終結方法、
(b)前記トランザクションを構成する一部の処理の実行結果が目的結果であり、他の処理の実行結果が目的結果でないとき、前記トランザクションを構成する全ての処理の実行結果を取消す終結方法、
(c)前記トランザクションを構成する全部の処理の実行結果が目的結果であるとき、前記トランザクションを構成する全ての処理の実行結果を確定する終結方法
のうち、いずれか1つの終結方法を選択させる機能を有することを特徴とするトランザクション実行管理プログラム。
A function for causing a computer to instruct the execution of each process constituting the operation-designated transaction to be executed and a function for terminating each process based on the execution result of each process constituting the transaction. In the transaction execution management program for
A function for causing the computer to output an execution result of each process when all the processes included in the transaction are completed in the process execution unit and a termination method designated for operation after outputting the execution result of each process are input to the computer Function and
The function for terminating each process is characterized in that each process constituting the transaction is terminated according to the input termination method,
The operation designated termination method is
(A) When an execution result of a part of the processes constituting the transaction is a target result and an execution result of another process is not the target result, the execution result for the process from which the target result constituting the transaction is obtained is determined. And a termination method for canceling an execution result for a process for which the target result cannot be obtained,
(B) a termination method for canceling the execution results of all the processes constituting the transaction when the execution results of some processes constituting the transaction are the target results and the execution results of other processes are not the target results;
(C) A function of selecting any one termination method from among termination methods for determining execution results of all the processes constituting the transaction when the execution results of all the processes constituting the transaction are target results. A transaction execution management program characterized by comprising:
ユーザの操作に従い、トランザクションを構成する各処理の実行を指示するトランザクション実行指示部と、
前記トランザクション実行指示部の指示に従いトランザクション処理を実行する処理実行部と、
前記処理実行部が実行した前記各処理の実行結果の情報を前記ユーザに提示する表示部と
前記表示部に表示された前記各処理の実行結果の情報について前記ユーザにより指定された終結方法を受け付けて前記操作指定されたトランザクション処理を終結させるトランザクション終結部とを具備し、
前記トランザクション終結部は、前記ユーザが指示した終結方法に従い、
(a)前記トランザクションを構成する一部の処理の実行結果が目的結果であり、他の処理の実行結果が目的結果でないとき、前記トランザクションを構成する目的結果が得られた処理に対する実行結果を確定し、前記目的結果が得られない処理に対する実行結果を取消す終結処理、
(b)前記トランザクションを構成する一部の処理の実行結果が目的結果であり、他の処理の実行結果が目的結果でないとき、前記トランザクションを構成する全ての処理の実行結果を取消す終結処理、
(c)前記トランザクションを構成する全部の処理の実行結果が目的結果であるとき、前記トランザクションを構成する全ての処理の実行結果を確定する終結処理
のうち、いずれか1つの終結処理を実行することを特徴とするトランザクション処理装置。
A transaction execution instruction unit for instructing execution of each process constituting the transaction in accordance with a user operation;
A process execution unit for executing transaction processing in accordance with an instruction from the transaction execution instruction unit;
A display unit that presents information about the execution result of each process executed by the process execution unit to the user, and a termination method designated by the user for the information about the execution result of each process displayed on the display unit A transaction ending unit for ending the transaction process specified by the operation,
The transaction closing unit follows a closing method designated by the user,
(A) When an execution result of a part of the processes constituting the transaction is a target result and an execution result of another process is not the target result, the execution result for the process from which the target result constituting the transaction is obtained is determined. And a termination process for canceling the execution result for the process for which the target result cannot be obtained,
(B) a termination process for canceling the execution results of all the processes constituting the transaction when the execution results of some processes constituting the transaction are the target results and the execution results of other processes are not the target results;
(C) When the execution result of all the processes constituting the transaction is the target result, executing one of the termination processes for finalizing the execution results of all the processes constituting the transaction A transaction processing apparatus.
JP2003070138A 2003-03-14 2003-03-14 Transaction execution management program and transaction processing apparatus Expired - Fee Related JP4334251B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003070138A JP4334251B2 (en) 2003-03-14 2003-03-14 Transaction execution management program and transaction processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003070138A JP4334251B2 (en) 2003-03-14 2003-03-14 Transaction execution management program and transaction processing apparatus

Publications (2)

Publication Number Publication Date
JP2004280397A JP2004280397A (en) 2004-10-07
JP4334251B2 true JP4334251B2 (en) 2009-09-30

Family

ID=33286962

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003070138A Expired - Fee Related JP4334251B2 (en) 2003-03-14 2003-03-14 Transaction execution management program and transaction processing apparatus

Country Status (1)

Country Link
JP (1) JP4334251B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9336097B2 (en) * 2014-02-27 2016-05-10 International Business Machines Corporation Salvaging hardware transactions
CN109725987A (en) * 2018-12-15 2019-05-07 深圳壹账通智能科技有限公司 A kind of distributed transaction consistency solution and relevant device

Also Published As

Publication number Publication date
JP2004280397A (en) 2004-10-07

Similar Documents

Publication Publication Date Title
JP4358782B2 (en) A computer-implemented program for financial planning and advice systems.
US8131692B2 (en) Method allowing validation in a production database of new entered data prior to their release
JP5025850B2 (en) Cross application timesheet
US7328233B2 (en) Method and apparatus for implementing an active information model
US7930268B2 (en) Workflow method, system, and data structure
Watson Information systems
JP2008186478A (en) Computer executable workflow control system
US20080162197A1 (en) System and method for redemption and exchange of unused tickets
JP4334251B2 (en) Transaction execution management program and transaction processing apparatus
US20220269673A1 (en) Updating of database data associated with spreadsheet structures
Wulandari Optimizing Public Service Through E-Gov Services (The Case Of Public Service in South Jakarta Municipality)
JP2005202920A (en) Workflow system and workflow system management method
JPH0844670A (en) File management method, computer system using the same, and operating method of the computer system
JP2001195447A (en) Communication managing device in enterprise resource planning
Phuong Enhancing transparency in land transaction process by reference architecture for workflow management system
JP7751818B1 (en) Information Processing Systems
JP6928708B1 (en) Fixed date prepayment system
US20090204462A1 (en) Trade services management system
JPH0445873B2 (en)
JP2004206358A (en) Overall money receipt managing device, computer program, and recording medium
Watson The University of Georgia
Kantanantha Sales and production information system of Suttiwattana Gravure Co., Ltd
Sinpagekan Catalogue information system for credit card rewards
Phuong Enhancing transparency in land transaction process by reference architechture for workflow management
Moyle Data warehouses and data marts: Can these tools be implemented too early in the development of a company?

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060307

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090410

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

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

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

Free format text: PAYMENT UNTIL: 20120703

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120703

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130703

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees