(57)【特許請求の範囲】
【請求項１】
変数を用いた演算が含まれるデータ処理の実行を制御するデータ処理制御装置に接続され、前記データ処理制御装置を管理する、前記データ処理制御装置とは別装置である管理装置であって、
前記データ処理が実行され変数を用いた演算が行われると、演算の対象となった変数名と、演算後の変数値と、演算のタイミングを示すタイミング識別子を前記データ処理制御装置から受信する受信部と、
前記受信部により受信された変数名と変数値とタイミング識別子を対応付けて記憶する変数情報記憶部と、
再実行タイミングを示すタイミング識別子が含まれ、前記再実行タイミングからのデータ処理の再実行を指示する再実行指示を入力する入力部と、
前記変数情報記憶部から、前記再実行指示のタイミング識別子に先行するタイミング識別子を抽出するとともに抽出したタイミング識別子と対応付けて記憶されている変数名と変数値を抽出する変数情報抽出部と、
前記変数情報抽出部により抽出された変数名と変数値と前記再実行タイミングを示すタイミング識別子を含み、前記再実行タイミングからのデータ処理の再実行を要求する再実行要求を生成する再実行要求生成部と、
前記再実行要求を前記データ処理制御装置に対して送信する送信部とを有することを特徴とする管理装置。
【請求項２】
前記管理装置は、複数のデータ処理制御装置に接続され、
前記受信部は、
データ処理制御装置ごとに、変数名と変数値とタイミング識別子を受信し、
前記変数情報記憶部は、
前記受信部により受信された変数名と変数値とタイミング識別子を、受信元のデータ処理制御装置と関連付けて記憶し、
前記変数情報抽出部は、
前記変数情報記憶部から、前記再実行指示のタイミング識別子に先行するタイミング識別子を抽出するとともに抽出したタイミング識別子と対応付けて記憶されている変数名と変数値を抽出し、さらに、前記再実行指示のタイミング識別子と関連付けられているデータ処理制御装置を抽出し、
前記送信部は、
前記変数情報抽出部により抽出されたデータ処理制御装置に対して前記再実行要求を送信することを特徴とする請求項１に記載の管理装置。
【請求項３】
前記管理装置は、
前記データ処理制御装置として、ビジネスプロセスを実現するデータ処理の実行を制御するＥＳＢ（Ｅｎｔｅｒｐｒｉｓｅ  Ｓｅｒｖｉｃｅ  Ｂｕｓ）実行計算機に接続されていることを特徴とする請求項１又は２に記載の管理装置。
【請求項４】
所定の管理装置に接続され、変数を用いた演算が含まれるデータ処理の実行を制御する、前記管理装置とは別装置であるデータ処理制御装置であって、
前記データ処理が実行され変数を用いた演算が行われると、演算の対象となった変数名と、演算後の変数値と、演算のタイミングを示すタイミング識別子が含まれる演算実行情報を生成する演算実行情報生成部と、
前記演算実行情報を前記管理装置に送信する送信部と、
再実行タイミングを示すタイミング識別子を含むとともに、前記再実行タイミングに先行する演算で用いられ前記演算実行情報として前記管理装置に送信された変数名と変数値を含み、前記再実行タイミングからのデータ処理の再実行を要求する再実行要求を前記管理装置から受信する受信部と、
前記再実行要求に含まれている変数名と変数値を用いて、前記再実行タイミングから前記データ処理を再実行するデータ処理実行部とを有することを特徴とするデータ処理制御装置。
【請求項５】
前記データ処理実行部は、
前記データ処理が他のデータ処理制御装置で制御される他のデータ処理の一部を構成する場合に、前記他のデータ処理制御装置に前記他のデータ処理を再実行させ、前記再実行要求に含まれている変数名と変数値を用いて前記再実行タイミングから前記データ処理を再実行することを特徴とする請求項４に記載のデータ処理制御装置。
【請求項６】
前記データ処理制御装置は、
ビジネスプロセスを実現するデータ処理の実行を制御するＥＳＢ（Ｅｎｔｅｒｐｒｉｓｅ  Ｓｅｒｖｉｃｅ  Ｂｕｓ）実行計算機であることを特徴とする請求項４又は５に記載のデータ処理制御装置。
【請求項７】
変数を用いた演算が含まれるデータ処理の実行を制御するデータ処理制御装置に接続された、前記データ処理制御装置とは別装置であるコンピュータが行う前記データ処理制御装置の管理方法であって、
前記データ処理が実行され変数を用いた演算が行われると、演算の対象となった変数名と、演算後の変数値と、演算のタイミングを示すタイミング識別子を、前記コンピュータが前記データ処理制御装置から受信する受信ステップと、
前記コンピュータが、前記受信ステップにより受信された変数名と変数値とタイミング識別子を対応付けて所定の変数情報記憶部に記憶する変数情報記憶ステップと、
前記コンピュータが、再実行タイミングを示すタイミング識別子が含まれ、前記再実行タイミングからのデータ処理の再実行を指示する再実行指示を入力する入力ステップと、
前記コンピュータが、前記変数情報記憶部から、前記再実行指示のタイミング識別子に先行するタイミング識別子を抽出するとともに抽出したタイミング識別子と対応付けて記憶されている変数名と変数値を抽出する変数情報抽出ステップと、
前記コンピュータが、前記変数情報抽出ステップにより抽出された変数名と変数値と前記再実行タイミングを示すタイミング識別子を含み、前記再実行タイミングからのデータ処理の再実行を要求する再実行要求を生成する再実行要求生成ステップと、
前記コンピュータが、前記再実行要求を前記データ処理制御装置に対して送信する送信ステップとを有することを特徴とする管理方法。
【請求項８】
所定の管理装置に接続され、変数を用いた演算が含まれるデータ処理の実行を制御する、前記管理装置とは別装置であるコンピュータが行うデータ処理制御方法であって、
前記データ処理が実行され変数を用いた演算が行われると、前記コンピュータが、演算の対象となった変数名と、演算後の変数値と、演算のタイミングを示すタイミング識別子が含まれる演算実行情報を生成する演算実行情報生成ステップと、
前記コンピュータが、前記演算実行情報を前記管理装置に送信する送信ステップと、
再実行タイミングを示すタイミング識別子を含むとともに、前記再実行タイミングに先行する演算で用いられ前記演算実行情報として前記管理装置に送信された変数名と変数値を含み、前記再実行タイミングからのデータ処理の再実行を要求する再実行要求を前記コンピュータが前記管理装置から受信する受信ステップと、
前記コンピュータが、前記再実行要求に含まれている変数名と変数値を用いて、前記再実行タイミングから前記データ処理を再実行するデータ処理実行ステップとを有することを特徴とするデータ処理制御方法。
【請求項９】
変数を用いた演算が含まれるデータ処理の実行を制御するデータ処理制御装置に接続された、前記データ処理制御装置とは別装置であるコンピュータに、
前記データ処理が実行され変数を用いた演算が行われると、演算の対象となった変数名と、演算後の変数値と、演算のタイミングを示すタイミング識別子を前記データ処理制御装置から受信する受信ステップと、
前記受信ステップにより受信された変数名と変数値とタイミング識別子を対応付けて所定の変数情報記憶部に記憶する変数情報記憶ステップと、
再実行タイミングを示すタイミング識別子が含まれ、前記再実行タイミングからのデータ処理の再実行を指示する再実行指示を入力する入力ステップと、
前記変数情報記憶部から、前記再実行指示のタイミング識別子に先行するタイミング識別子を抽出するとともに抽出したタイミング識別子と対応付けて記憶されている変数名と変数値を抽出する変数情報抽出ステップと、
前記変数情報抽出ステップにより抽出された変数名と変数値と前記再実行タイミングを示すタイミング識別子を含み、前記再実行タイミングからのデータ処理の再実行を要求する再実行要求を生成する再実行要求生成ステップと、
前記再実行要求を前記データ処理制御装置に対して送信する送信ステップとを実行させることを特徴とするプログラム。
【請求項１０】
所定の管理装置に接続され、変数を用いた演算が含まれるデータ処理の実行を制御する、前記管理装置とは別装置であるコンピュータに、
前記データ処理が実行され変数を用いた演算が行われると、演算の対象となった変数名と、演算後の変数値と、演算のタイミングを示すタイミング識別子が含まれる演算実行情報を生成する演算実行情報生成ステップと、
前記演算実行情報を前記管理装置に送信する送信ステップと、
再実行タイミングを示すタイミング識別子を含むとともに、前記再実行タイミングに先行する演算で用いられ前記演算実行情報として前記管理装置に送信された変数名と変数値を含み、前記再実行タイミングからのデータ処理の再実行を要求する再実行要求を前記管理装置から受信する受信ステップと、
前記再実行要求に含まれている変数名と変数値を用いて、前記再実行タイミングから前記データ処理を再実行するデータ処理実行ステップとを実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定のデータ処理が行われた後に当該データ処理を所定の箇所から再実行する際の効率化技術に関する。
より具体的には、例えば、ＥＳＢ（Ｅｎｔｅｒｐｒｉｓｅ  Ｓｅｒｖｉｃｅ  Ｂｕｓ）実行計算機を含むシステムにおいて所定のビジネスプロセスが行われた後に当該ビジネスプロセスを所定の箇所から再実行する際の効率化技術に関する。
【背景技術】
【０００２】
ＥＳＢとは、ＳＯＡ（Ｓｅｒｖｉｃｅ−Ｏｒｉｅｎｔｅｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ）における基本ミドルウェアであり、メッセージルーターを提供し、サービス間でメッセージルーターを通じた、メッセージのやりとりを行う、メッセージ指向のアプリケーション構築を可能にするミドルウェアである。
【０００３】
ＥＳＢの仕様は、非特許文献１で標準仕様が規定されており、ＥＳＢコンテナ、メッセージルーター、コンポーネント、ルーティング定義から構成される。
ＥＳＢコンテナはＥＳＢミドルウェア全体の制御を行う、ＥＳＢ上の構成要素はＥＳＢコンテナ上に配置される。
ルーティング定義は、サービスとサービスの接続方法を定義したものである。
ＥＳＢ起動時にルーティング定義は、各コンポーネントに対して、サービス同士の接続方法を示すパラメータ情報を設定する。
コンポーネントには、メッセージを送受信する機能と、サービスが含まれている。
【０００４】
ＥＳＢ上でビジネスプロセスを制御する方法、すなわち、サービスを業務フローに従って意図した順番で実行する方法は、非特許文献２のＰｒｏｃｅｓｓ  Ｍａｎａｇｅｒパターンで示される方法が使用される。
これは、コンポーネントとしてビジネスプロセスを制御する、ビジネスプロセス実行コンポーネントを配置する方法である。
ビジネスプロセス実行コンポーネントは、ビジネスプロセス定義を持ち、ビジネスプロセスに含まれるコンポーネントは、必ずビジネスプロセス実行コンポーネントを介して、次に実行するコンポーネントを決める。
【０００５】
特許文献１にも、ＥＳＢ上にＰｒｏｃｅｓｓ  Ｍａｎａｇｅｒ型の制御を行うための、ビジネスプロセス実行機能を配置することにより、ビジネスプロセスの制御を行う技術が開示されている。
特許文献１では、複数のＥＳＢ実行計算機がある環境において、ＥＳＢ実行計算機間をまたがるビジネスプロセスをサブビジネスプロセスに分けて実行する方法が述べられている。
この中では、ビジネスプロセスの変数はサブビジネスプロセスを呼出すメッセージに付与することにより、サブビジネスプロセス間での変数の同期を行っている。
また、特許文献１の第７８段落においては分割先のサブビジネスプロセスの中では、そのサブビジネスプロセス内で使用する変数のみを定義してもよいことが述べられている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−２０４４３０号公報
【非特許文献】
【０００７】
【非特許文献１】Ｒｏｎ  Ｔｅｎ−Ｈｏｖｅ，  Ｐｅｔｅｒ  Ｗａｌｋｅｒ著、「Ｊａｖａ（登録商標）  Ｂｕｓｉｎｅｓｓ  Ｉｎｔｅｇｒａｔｉｏｎ（ＪＢＩ）１．０」Ｓｕｎ  Ｍｉｃｒｏｓｙｓｔｅｍｓ  Ｉｎｃ．、２００５年８月１７日発行
【非特許文献２】Ｇｒｅｇｏｒ  Ｈｏｈｐｅ、Ｂｏｂｂｙ  Ｗｏｏｌｆ著、「Ｅｎｔｅｒｐｒｉｓｅ  Ｉｎｔｅｇｒａｔｉｏｎ  Ｐａｔｔｅｒｎｓ：  Ｄｅｓｉｇｎｉｎｇ，  Ｂｕｉｌｄｉｎｇ，  ａｎｄ  Ｄｅｐｌｏｙｉｎｇ  Ｍｅｓｓａｇｉｎｇ  Ｓｏｌｕｔｉｏｎｓ」Ａｄｄｉｓｏｎ−Ｗｅｓｌｅｙ  Ｐｕｂ出版、２００３年１０月１０日発行、ｐ．３１２〜３２１
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上記のような複数のＥＳＢ実行計算機がある環境において、ビジネスプロセスの中のあるアクティビティが失敗した場合、回復の方法としては、失敗の原因を取り除いた後でビジネスプロセスをはじめから実施するという方法がある。
しかし、本来成功していたアクティビティを再び実行することになり無駄があるため、失敗の原因を取り除いた後で任意のアクティビティから処理を再開したいという要望がある。
この再開を実現するための方法としては、各アクティビティが終了した時点で、そのアクティビティを実行していたＥＳＢ実行計算機がビジネスプロセスの実行状態、すなわちビジネスプロセスで定義されている全変数の値を保存する。そして、アクティビティを再開するときには、保存されている変数を使用して各ＥＳＢ実行計算機の状態を指定されたアクティビティの実行前に戻すということが考えられる。
すべてのサブビジネスプロセスの間で全ての変数を共有している、つまりＥＳＢ実行計算機間で全変数の同期が取れている場合には上記の方法で問題はない。
しかし、各サブビジネスプロセスがそれぞれで使用する変数のみを定義している場合、一つのＥＳＢ実行計算機ではビジネスプロセス全体の変数を保持していない。
そのため、各アクティビティが終了した時点の全変数を保存するためには、アクティビティを実行していたＥＳＢ実行計算機が全ＥＳＢ実行計算機から変数を収集するなどの処理が発生し、無駄が大きいという課題がある。
【０００９】
本発明は、上記の課題を解決することを主な目的とし、任意の箇所からデータ処理の再実行が可能な仕組みを提供することを主な目的とする。
【課題を解決するための手段】
【００１０】
本発明に係る管理装置は、
変数を用いた演算が含まれるデータ処理の実行を制御するデータ処理制御装置に接続され、前記データ処理制御装置を管理する管理装置であって、
前記データ処理が実行され変数を用いた演算が行われると、演算の対象となった変数名と、演算後の変数値と、演算のタイミングを示すタイミング識別子を前記データ処理制御装置から受信する受信部と、
前記受信部により受信された変数名と変数値とタイミング識別子を対応付けて記憶する変数情報記憶部と、
再実行タイミングを示すタイミング識別子が含まれ、前記再実行タイミングからのデータ処理の再実行を指示する再実行指示を入力する入力部と、
前記変数情報記憶部から、前記再実行指示のタイミング識別子に先行するタイミング識別子を抽出するとともに抽出したタイミング識別子と対応付けて記憶されている変数名と変数値を抽出する変数情報抽出部と、
前記変数情報抽出部により抽出された変数名と変数値と前記再実行タイミングを示すタイミング識別子を含み、前記再実行タイミングからのデータ処理の再実行を要求する再実行要求を生成する再実行要求生成部と、
前記再実行要求を前記データ処理制御装置に対して送信する送信部とを有することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、データ処理において変数を用いた演算が行われると、演算の対象となった変数名と、演算後の変数値と、演算のタイミングを示すタイミング識別子を受信し、受信した変数名と変数値とタイミング識別子を対応付けて記憶し、再実行指示が入力された場合に、データ処理の再実行に必要な変数名と変数値を抽出し、再実行タイミングを示すタイミング識別子と、抽出した変数名と変数値をデータ処理制御装置に送信するため、データ処理制御装置が独自の変数を定義している場合も、任意の箇所からデータ処理の再実行が可能である。
【図面の簡単な説明】
【００１２】
【図１】実施の形態１に係るシステム構成例を示す図。
【図２】実施の形態１に係るＥＳＢ実行計算機の構成例を示す図。
【図３】実施の形態１に係るビジネスプロセス再開用計算機の構成例を示す図。
【図４】実施の形態１に係るビジネスプロセス定義の例を示す図。
【図５】実施の形態１に係る変数データベース定義の例を示す図。
【図６】実施の形態１に係るＳＴＡＲＴ  Ａ終了時の変数データベースの状態を示す図。
【図７】実施の形態１に係るサービスＡ１終了時の変数データベースの状態を示す図。
【図８】実施の形態１に係るＳＴＡＲＴ  Ｂ終了時の変数データベースの状態を示す図。
【図９】実施の形態１に係るビジネスプロセス実行フローを示す図。
【図１０】実施の形態１に係るＥＳＢ実行計算機の動作例を示すフローチャート図。
【図１１】実施の形態１に係るビジネスプロセス再開用計算機の動作例を示すフローチャート図。
【図１２】実施の形態１に係るビジネスプロセス再開用計算機等のハードウェア構成例を示す図。
【発明を実施するための形態】
【００１３】
実施の形態１．
本実施の形態では、変数を用いた演算が含まれるデータ処理の実行を制御する複数のデータ処理制御装置と、複数のデータ処理制御装置を管理する管理装置から構成されるシステムを対象とする。
なお、以下では、複数のデータ処理制御装置が複数のサブビジネスプロセスの実行を制御し、複数のサブビジネスプロセスの実行によりビジネスプロセスが実行される例を用いて説明する。
本例では、サブビジネスプロセスがデータ処理の例となる。
また、各サブビジネスプロセスには１つ以上のアクティビティが含まれ、各アクティビティでは、変数を用いた演算が行われる。
また、以下では、サブビジネスプロセスの実行を制御する複数のＥＳＢ実行計算機を複数のデータ処理制御装置の例として説明し、複数のＥＳＢ実行計算機を管理するビジネスプロセス再開用計算機を管理装置の例として説明する。
【００１４】
詳細は後述するが、本実施の形態における動作を概説すると以下のようになる。
サブビジネスプロセスが実行され変数を用いた演算が行われると、ＥＳＢ実行計算機は、演算の対象となった変数名と、演算後の変数値と、演算のタイミングを示すタイミング識別子（アクティビティ名）が含まれる演算実行情報を生成し、演算実行情報をビジネスプロセス再開用計算機に送信し、ビジネスプロセス再開用計算機は、演算実行情報を受信し、受信した演算実行情報を記憶する。つまり、ビジネスプロセス再開用計算機は、変数名と演算後の変数値とアクティビティ名とを対応付けて記憶する。
そして、いずれかのＥＳＢ実行計算機においてビジネスプロセスの再実行が必要になった際に、ビジネスプロセス再開用計算機では、再実行対象のアクティビティに先行するアクティビティにおける変数名と変数値を抽出し、抽出した変数名と変数値を含みアクティビティの再実行を要求する再開要求（再実行要求）をＥＳＢ実行計算機に送信して、対象のアクティビティを再実行させる。
【００１５】
図１は、本実施の形態に係るシステム構成の一例を示す構成図である。
図１に示すように、本実施の形態では、ＳＯＡシステムＡ（１）、ＳＯＡシステムＢ（２）の２つのＳＯＡシステムが存在する。
そして、それぞれのＳＯＡシステムでは、ＥＳＢミドルウェアを実行する計算機であるＥＳＢ実行計算機Ａ（１１）及びＥＳＢ実行計算機Ｂ（２１）が存在する。
ＥＳＢ実行計算機Ａ（１１）及びＥＳＢ実行計算機Ｂ（２１）は、ネットワーク３を介して相互に通信可能になっており、相互に連携してサービスを提供することができる。
前述のように、ＥＳＢ実行計算機Ａ（１１）及びＥＳＢ実行計算機Ｂ（２１）は、それぞれ、データ処理制御装置の例である。
なお、ＳＯＡシステムの数は２つに限定されるものではなく、複数であれば３つ以上であってもよい。
また、ネットワーク３は、イントラネットなどのローカルネットワークであってもよいし、インターネットなどのグローバルネットワークであってもよい。
【００１６】
また、本実施の形態では、各ＳＯＡシステム（１および２）を、ＥＳＢを実行するためのＥＳＢ実行計算機（１１および２２）、サービスを実行するためのサービス実行計算機（１２、１４および２２）、およびそれらの計算機を接続するためのネットワーク（１３および２３）から構成している。
ここでネットワーク１３およびネットワーク２３は、イントラネットなどのローカルネットワークであってもよいし、インターネットなどのグローバルネットワークであってもよい。
各ＳＯＡシステムにおいてサービス実行計算機は複数存在してもよい。
【００１７】
また、本実施の形態では、ＳＯＡシステムＡ（１）において、ＥＳＢ実行計算機Ａ（１１）、サービス実行計算機１２、サービス実行計算機１４がネットワーク１３を介して相互に通信可能にされている。
サービス実行計算機１２上のサービス実行基盤１２１には、サービスＡ１（１２１１）、サービスＡ２（１２１２）が配備され、サービス実行計算機１４上のサービス実行基盤１４１にはサービスＡ３（１４１１）が配備されている。
サービス実行計算機に配備されるサービスは、サービス実行計算機１２のように複数存在してもよいし、サービス実行計算機１４のように一つ存在してもよく、またサービスが一つも存在しなくてもよい。
【００１８】
ＳＯＡシステムＡ（１）と同様に、ＳＯＡシステムＢ（２）において、ＥＳＢ実行計算機Ｂ（２１）、サービス実行計算機２２がネットワーク２３を介して相互に通信可能にされており、サービス実行計算機２２上のサービス実行基盤２２１にはサービスＢ１（２２１１）とサービスＢ２（２２１２）が配備されている。
【００１９】
また、本実施の形態では、ネットワーク３を介してＳＯＡシステムと相互に通信可能なビジネスプロセス再開用計算機４が存在する。
前述のように、ビジネスプロセス再開用計算機４は管理装置の例である。
【００２０】
図２は、本実施の形態に係るＥＳＢ実行計算機の構成例を示す。
図２では、ＥＳＢ実行計算機Ａ（１１）を示しているが、ＥＳＢ実行計算機Ｂ（２１）も同様の構成である。
ＥＳＢ実行計算機Ａ（１１）には、通信部１１０とビジネスプロセス実行部Ａ（１１１）とビジネスプロセス定義記憶部１１２が存在する。
【００２１】
通信部１１０は、演算実行情報をビジネスプロセス再開用計算機４に送信するとともに、ビジネスプロセス再開用計算機４から、アクティビティの再実行を要求する再開要求（再実行要求）を受信する。
通信部１１０は、送信部及び受信部の例である。
なお、ＥＳＢ実行計算機Ｂ（２１）の通信部は、通信部２１０と表記する。
【００２２】
ビジネスプロセス定義記憶部１１２は、ビジネスプロセス定義を記憶している。
ビジネスプロセス定義は、複数のＳＯＡシステムにわたって実行するビジネスプロセスが定義されている。ビジネスプロセス定義に示されるビジネスプロセスは、各ＳＯＡシステムで実行されるサブビジネスプロセス定義に分解することが出来る。
なお、以下では、ビジネスプロセス定義を便宜的にビジネスプロセス定義１１２とも表記する。
図４にビジネスプロセス定義１１２の例を示す。
図４の例では、ビジネスプロセス定義１１２はＳＯＡシステムＡ（１）で実行するサブビジネスプロセスＡ定義１１２１とサブビジネスプロセスＢ定義１１２２に分解される。
更に、サブビジネスプロセスＡ定義１１２１は、複数のアクティビティ（サービスＡ１、サービスＡ２、サービスＡ３）に分解される。
また、サブビジネスプロセスＢ定義１１２２も、複数のアクティビティ（サービスＢ１、サービスＢ２）に分解される。
なお、一つのＥＳＢ実行計算機の中に複数のビジネスプロセス定義が存在してもよい。
また、ＥＳＢ実行計算機Ｂ（２１）でも、ＥＳＢ実行計算機Ａ（１１）と同じビジネスプロセス定義を有している。
【００２３】
ビジネスプロセス実行部Ａ（１１１）は、ビジネスプロセス定義１１２に従って実行されているサブビジネスプロセスＡインスタンス（１１１１）の変数や実行しているアクティビティなどの実行状態を管理し、サービスにメッセージを送信することでサブビジネスプロセスＡインスタンスの処理を進める機能を持つ。
また、ビジネスプロセス実行部Ａ（１１１）は、アクティビティが実行され変数を用いた演算が行われると、演算の対象となった変数名と、演算後の変数値と、演算のタイミングを示すタイミング識別子（アクティビティ名）が含まれる演算実行情報を生成する。
更に、ビジネスプロセス実行部Ａ（１１１）は、通信部１１０により再開要求（再実行要求）が受信された場合に、再開要求に含まれている変数名と変数値を用いて、再実行が指示されているアクティビティを再実行する。
ビジネスプロセス実行部Ａ（１１１）は、演算実行情報生成部及びデータ処理実行部の例である。
なお、ＥＳＢ実行計算機Ｂ（２１）のビジネスプロセス実行部は、ビジネスプロセス実行部Ｂ（２１１）と表記する。
【００２４】
図３は、本実施の形態に係るビジネスプロセス再開用計算機４の構成例を示す。
【００２５】
ビジネスプロセス再開用計算機４において、通信部４０は、サブビジネスプロセスが実行され変数を用いた演算が行われると、演算の対象となった変数名と、演算後の変数値と、演算が行われたアクティビティ名が含まれる演算実行情報を受信する。演算実行情報に含まれるアクティビティ名は、演算のタイミングを示す識別子であり、タイミング識別子の例である。
また、通信部４０は、ユーザからアクティビティの再開指示（再実行指示）を入力した際に、アクティビティの再実行を要求する再開要求（再実行要求）を該当するＥＳＢ実行計算機に送信する。
通信部４０は受信部及び送信部の例である。
【００２６】
変数保存部４１は、通信部４０により受信された演算実行情報に含まれる変数名、変数値、アクティビティ名を変数データベース４２に書き込む。
【００２７】
変数データベース４２は、ビジネスプロセスの各アクティビティが終了した時点の変数を保存する。
より具体的には、変数データベース４２は、通信部４０により受信された演算実行情報に含まれる変数名、変数値、アクティビティ名を、受信元のＥＳＢ実行計算機と関連付けて記憶する。
変数データベース４２は、バージョン管理表４２１と変数管理表４２２を備える。
バージョン管理表４２１と変数管理表４２２の詳細は後述する。
変数データベース４２は、変数情報記憶部の例である。
【００２８】
入力部４４は、特定のアクティビティの再実行を指示する再開指示を入力する。
再開指示には、再実行の対象となるアクティビティ名が含まれ、当該アクティビティの再実行を指示する。
なお、再開指示に含まれるアクティビティ名は、再実行タイミングを示す識別子であり、タイミング識別子の例である。
【００２９】
ビジネスプロセス再開部４３は、入力部４４により再開指示が入力された場合に、変数データベース４２から、再開指示に含まれるアクティビティ名に先行するアクティビティ名を抽出するとともに抽出したアクティビティ名と対応付けて記憶されている変数名と変数値を抽出し、さらに、再開指示に含まれるアクティビティ名と関連付けられているＥＳＢ実行計算機を抽出する。
また、ビジネスプロセス再開部４３は、抽出したＥＳＢ実行計算機を宛先とし、抽出した変数名と変数値と再実行の対象となるアクティビティ名を含み、再実行対象のアクティビティの再実行を要求する再開要求（再実行要求）を生成する。
通信部４０は、ビジネスプロセス再開部４３により抽出されたＥＳＢ実行計算機に再開要求を送信する。
ビジネスプロセス再開部４３は、変数情報抽出部及び再実行要求生成部の例である。
【００３０】
次に、変数データベース４２のバージョン管理表４２１と変数管理表４２２の詳細を説明する。
バージョン管理表４２１は、プロセスインスタンスが持つ変数のバージョンを管理するテーブルである。
変数管理表４２２は、変数の実体を管理するテーブルである。
バージョン管理表４２１と変数管理表４２２の定義を図５に示す。
【００３１】
バージョン管理表４２１に含まれるインスタンスＩＤ４２１１は、ビジネスプロセスインスタンスの識別子である。インスタンスＩＤ４２１１は、ＥＳＢ実行計算機からの演算実行情報に含まれる。
実行アクティビティ４２１２は、変数を用いた演算が行われたアクティビティの名称を示す。実行アクティビティ４２１２は、ＥＳＢ実行計算機からの演算実行情報に含まれる。
変数名４２１３は、演算に用いられた変数名を示す。変数名４２１３は、ＥＳＢ実行計算機からの演算実行情報に含まれる。
バージョン４２１４は、同じ変数名に対して変数値の更新が行われた回数を示す。バージョン４２１４は、変数保存部４１が設定する。
時刻４２１５は、演算実行情報の受信時刻又は変数データベース４２への各データの格納時刻である。時刻４２１５は、変数保存部４１が設定する。
変数管理表４２２において、インスタンスＩＤ４２１１、変数名４２１３、バージョン４２１４は、バージョン管理表４２１に含まれるものと同様である。
値４２１６は、演算後の変数値である。値４２１６は、演算実行情報に含まれる。
なお、実行アクティビティ４２１２や変数名４２１３は、それぞれアクティビティや変数を一意に識別できればよく、名称ではなくＩＤを使用してもよい。
また、バージョン管理表４２１の時刻４２１５は、バージョン管理表４２１にデータを追加した順番を管理するためのものであり、時刻の代わりにシーケンス番号を使用してもよい。
また、主キーの欄に「○」のある項目は、主キーとして機能する。
バージョン管理表４２１と変数管理表４２２は、例えば、図６、図７、図８のような形式で管理される。
なお、各図の詳細は後述する。
【００３２】
次に、図１０及び図１１のフローチャートに基づいて動作例を説明する。
図１０はＥＳＢ実行計算機の動作例を示し、図１１はビジネスプロセス再開用計算機４の動作例を示す。
まず、図１０のＳ１００１〜Ｓ１００３及び図１１のＳ１１０１、Ｓ１１０２によりビジネスプロセス実行時の変数保存の動作例を説明する。
【００３３】
図１０において、各ＥＳＢ実行計算機のビジネスプロセス実行部はサブビジネスプロセスインスタンスの各アクティビティを実行し（Ｓ１００１）、各アクティビティが終了した時点で、サブビジネスプロセスインスタンスが保持する変数名、変数値、アクティビティ名を示す演算実行情報を生成する（Ｓ１００２）（演算実行情報生成ステップ）。
また、ＥＳＢ実行計算機の通信部は、演算実行情報をビジネスプロセス再開用計算機４の通信部４０に送信する（Ｓ１００３）（送信ステップ）。
【００３４】
ビジネスプロセス再開用計算機４では、図１１に示すように、通信部４０が演算実行情報を受信し（Ｓ１１０１）（受信ステップ）、変数保存部４１が、演算実行情報に含まれる変数名、変数値アクティビティ名を変数データベース４２に格納する（Ｓ１１０２）（変数情報記憶ステップ）。
なお、変数保存部４１は、ＥＳＢ実行計算機のビジネスプロセス実行部から送信されなかった変数が存在すると判定した場合は、直前のビジネスプロセスインスタンスの変数状態から変数をコピーすることにより、変数を補完する。
【００３５】
次に、図１１のＳ１１０３〜Ｓ１１０６及び図１０のＳ１００４、Ｓ１００５により、ビジネスプロセス再開時の動作例について説明する。
【００３６】
ビジネスプロセスの再開時は、図１１に示すように、まず、ビジネスプロセス再開用計算機４の入力部４４がユーザからの再開指示を入力する（Ｓ１１０３でＹＥＳ）（入力ステップ）。
再開指示には、再開するビジネスプロセスインスタンスを特定するためのインスタンスＩＤと再開箇所（再実行タイミング）を指定するアクティビティ名が含まれる。
ビジネスプロセス再開部４３は入力部４４から再開指示を受けると、変数データベース４２から該当ビジネスプロセスインスタンスのユーザから指定されたアクティビティの実行前の変数名と変数値を取得する（Ｓ１１０４）（変数情報抽出ステップ）。
つまり、ビジネスプロセス再開部４３は、再開指示で指定されているアクティビティ名の１つ前のアクティビティ名を抽出するとともに、抽出したアクティビティ名に対応付けられている変数名と変数値を抽出する。
次に、ビジネスプロセス再開部４３は、再開要求を生成する（Ｓ１１０５）（再実行要求生成ステップ）。
より具体的には、ビジネスプロセス再開部４３は、再開指示のアクティビティ名、Ｓ１１０４で抽出した変数名、変数値を含み、再開指示で指示されているアクティビティを再実行するよう要求する再開要求を生成する。
なお、図１及び図４に示すように、各アクティビティはＥＳＢ実行計算機と対応関係にあることから、ビジネスプロセス再開部４３は、再開指示のアクティビティ名に対応するＥＳＢ実行計算機を再開要求の宛先とする。例えば、Ｓ１１０４で抽出したアクティビティ名がサービスＡ１であれば、ＥＳＢ実行計算機Ａ（１１）を再開要求の宛先とする。
その後、通信部４０が、再開要求を対象となるＥＳＢ実行計算機に送信する（Ｓ１１０６）（送信ステップ）。
【００３７】
ＥＳＢ実行計算機では、図１０に示すように、通信部がビジネスプロセス再開用計算機４から再開要求を受信すると（Ｓ１００４でＹＥＳ）（受信ステップ）、ビジネスプロセス実行部が再開要求に従って、再開要求に含まれる変数名と変数値を用いて、対象となるアクティビティを再開（再実行）する（Ｓ１００５）（データ処理実行ステップ）。
なお、Ｓ１００５の動作の詳細は、後述する。
【００３８】
次に、図４のビジネスプロセスを例に、動作について詳細な説明を行う。
まず、ビジネスプロセス実行時の変数保存の動作を説明する。
【００３９】
まず、ＥＳＢ実行計算機Ａ（１１）において、ビジネスプロセス実行部Ａ（１１１）は、ＳＴＡＲＴ  Ａを実行したら、ビジネスプロセスインスタンスのインスタンスＩＤ（ＸＹＺ）、実行したアクティビティ名（ＳＴＡＲＴ  Ａ）、ビジネスプロセスインスタンスで保持している変数の変数名（変数１および変数２）、各変数名に対する変数値を含む演算実行情報を生成し、通信部１０が、演算実行情報をビジネスプロセス再開用計算機４に送信する。
ビジネスプロセス再開用計算機４では、変数データベース４２上にインスタンスＩＤ＝ＸＹＺの変数が保存されていないことから、変数保存部４１が、その時点の変数をバージョン１として変数管理表４２２に保存する。
そして、変数保存部４１は、実行したアクティビティと変数のバージョンの対応をバージョン管理表４２１に時刻つきで保存する。このときの変数データベース４２のバージョン管理表４２１と変数管理表４２２の状態を図６に示す。
【００４０】
つぎに、ＥＳＢ実行計算機Ａ（１１）において、ビジネスプロセス実行部Ａ（１１１）は、サービスＡ１を実行する。
サービスＡ１が終了したら、ビジネスプロセス実行部Ａ（１１１）は演算実行情報を生成し、通信部１１０が、演算実行情報をビジネスプロセス再開用計算機４に送信する。
ビジネスプロセス再開用計算機４では、変数保存部４１は受信した演算実行情報のインスタンスＩＤ＝ＸＹＺの変数１、変数２がすでにデータベースに保存されていることから、それぞれの変数値を新しいバージョンの変数値として変数管理表４２２に保存する。
また、バージョン管理表４２１にアクティビティと変数のバージョン対応を追加する。
ここで、変数データベース４２上に保存されているインスタンスＩＤ＝ＸＹＺの変数は変数１、変数２のみであることから、不足している変数はないものとして、変数の補完処理は行わない。
このときの変数データベース４２のバージョン管理表４２１と変数管理表４２２の状態を図７に示す。
【００４１】
さらに、ＥＳＢ実行計算機Ｂ（２２）において、ビジネスプロセス実行部Ｂ（２１１）がＳＴＡＲＴ  Ｂを実行すると、ビジネスプロセス実行部Ｂ（２１１）はビジネスプロセス実行部Ｂ（２１１）が持つ変数である変数１と変数３の状態とインスタンスＩＤ＝ＸＹＺを示す演算実行情報を生成し、通信部２１０が、演算実行情報をビジネスプロセス再開用計算機４に送信する。
ビジネスプロセス再開用計算機４では、変数保存部４１が、インスタンスＩＤ＝ＸＹＺの変数１はすでに変数データベース４２に保存されているので、受信した変数１の変数値を新しいバージョンとして、変数管理表４２２に保存する。
また、インスタンスＩＤ＝ＸＹＺの変数３は、ＥＳＢ実行計算機Ｂ（２２）の独自の変数であり、まだ変数管理表４２２に保存されていないので、変数保存部４１は、変数３の変数値をバージョン１として変数管理表４２２に保存する。
また、バージョン管理表４２１に実行したアクティビティと変数のバージョン対応を追加する。
ここで、バージョン管理表４２１に示されている時刻から、直前に実行されたアクティビティ（サービスＡ１）に対してインスタンスＩＤ＝ＸＹＺの変数２が存在することが分かるが、ビジネスプロセス実行部Ｂ（２１１）から送信された演算実行情報の中には変数２が存在しないので、変数保存部４１は変数２の補完としてバージョン管理表４２１の中でＳＴＡＲＴ  Ｂに変数２の項目を設け、ＳＴＡＲＴ  Ｂの前に実行されたサービスＡ１の変数２のバージョン番号をコピーする。
このときの変数データベース４２のバージョン管理表４２１と変数管理表４２２の状態を図８に示す。
また、ここまでの動作フローを図９に示す。
以降は、同様に処理を進めることでビジネスプロセスインスタンスの各アクティビティを実行した段階の変数状態を表すバージョン管理表４２１と変数の実体を保存する変数管理表４２２が作成される。
【００４２】
次に、ビジネスプロセス再開時の動作の詳細を説明する。
ビジネスプロセス再開時の動作の全体の流れは図１０及び図１１を用いて説明したとおりであるが、ここでは、図１１のＳ１１０４及びＳ１１０５の動作の詳細と、図１０のＳ１００５の動作の詳細を説明する。
【００４３】
まず、図１１のＳ１１０４及びＳ１１０５の動作の詳細を説明する。
たとえば、ユーザからインスタンスＩＤ＝ＸＹＺ、再開対象のアクティビティとしてサービスＡが指定された再開指示を入力したとする。
この場合、ビジネスプロセス再開部４３は、例えば、ビジネスプロセス定義１１２（図４）又はバージョン管理表４２１を用いて、サービスＡの１つ前のアクティビティを検索する。この結果、「ＳＴＡＲＴ  Ａ」が抽出される。
次に、ビジネスプロセス再開部４３は、バージョン管理表４２１においてインスタンスＩＤ＝ＸＹＺ、実行アクティビティ＝ＳＴＡＲＴ  Ａを持つレコードを検索する。
図７又は図８の例では、該当するレコードは２つあり、両レコードには変数名として「変数１」及び「変数２」が示され、また、バージョンとして「１」が示されている。
次に、ビジネスプロセス再開部４３は、変数管理表４２２において、インスタンスＩＤ＝ＸＹＺ、変数名＝変数１、バージョン＝１を持つレコードと、インスタンスＩＤ＝ＸＹＺ、変数名＝変数２、バージョン＝１を持つレコードを検索する。
図７又は図８の例では、検索の結果、ビジネスプロセス再開部４３は、変数１の変数値として「１」を抽出し、変数２の変数値として「３」を抽出する。
次に、ビジネスプロセス再開部４３は、再開指示で指定されたアクティビティである「サービス１」と、再開指示で指定されたインスタンスＩＤである「ＸＹＺ」と、抽出した変数名である「変数１」及び「変数２」と、抽出した変数値である「１」及び「３」を内容とする再開要求を生成する。
【００４４】
次に、図１０のＳ１００５の動作の詳細を説明する。
再開要求を受信したビジネスプロセス実行部は、Ｓ１００５の動作として、まず、管理しているビジネスプロセスインスタンスの中から再開要求で指定されたビジネスプロセスインスタンスを検索し、再開要求で指定されたビジネスプロセスインスタンスが存在すれば、そのビジネスプロセスインスタンスの実行を中止する。
つぎに、ビジネスプロセス実行部は、どのようなサブビジネスプロセスインスタンスを作成するかを判定する。
例えば、サービスＡ１から再開するときは、サービスＡ１を実行しているサブビジネスプロセスＡのインスタンスだけが必要であるが、サービスＢ１から再開する場合は、サービスＢ１を実行しているサブビジネスプロセスＢのインスタンスの他に、サブビジネスプロセスＡも実行途中となるためインスタンスが必要となる。
このように、ビジネスプロセス実行部は、サービスＢ１から再開する場合のように、再開の対象となるサブビジネスプロセス（例えば、サブビジネスプロセスＢ）が他のＥＳＢ実行計算機（例えば、ＥＳＢ実行計算機Ａ（１１））で実行される他のサブビジネスプロセス（例えば、サブビジネスプロセスＡ）の一部を構成する場合に、他のＥＳＢ実行計算機に他のサブビジネスプロセスを再実行させ、再開要求に含まれている変数名と変数値を用いて再開が要求されたアクティビティ（例えば、サービスＢ１）からサブビジネスプロセスを再開する。
一方で、サービスＡ２から再開するときは、サブビジネスプロセスＢは終了しているためインスタンスは不要である。
【００４５】
これらの判定はビジネスプロセス定義１１２を解析してもよいし、実行時の情報を使用してもよい。
ビジネスプロセス定義１１２を解析する場合は、例えば、サブビジネスプロセスごとの呼出し元の表を作成する。
次に再開するアクティビティが、どのサブビジネスプロセスに属するかを調べる。
そして、そのサブビジネスプロセスの名前を記録し、さらに呼出し元のサブビジネスプロセスを調べる。
これを呼出し元がなくなるまで繰り返すことにより、アクティビティの再開に必要なサブビジネスプロセスの一覧を得ることが出来る。
また、実行時の情報を使用する場合は、例えば、変数データベース４２の中に実行サブビジネスプロセス管理表を作成し、ＥＳＢ実行計算機がビジネスプロセス再開用計算機４に送信するメッセージにサブビジネスプロセスの開始と終了の情報を追加する。
変数保存部４１は演算実行情報を受け取ると、実行されたアクティビティに必要なサブビジネスプロセスとして、直前に実行されていたサブビジネスプロセスの一覧をコピーする。
このとき演算実行情報にサブビジネスプロセスの開始情報があれば、そのサブビジネスプロセスに追加する。
逆に終了情報があればサブビジネスプロセスから削除する。
このようにして各アクティビティを実行したときに起動しているビジネスプロセスの一覧を作成することが出来る。
【００４６】
つぎに、ビジネスプロセス実行部は、サブビジネスプロセスインスタンスの要・不要の判定結果にもとづきビジネスプロセスインスタンスを作成し、インスタンスの中の変数を各アクティビティの実行前の状態に更新する（再開要求に含まれている変数値にする）。
そして、ビジネスプロセス実行部は再開要求で指定されたアクティビティを実行することによりビジネスプロセスを再開する。
このとき、応答待ちにしておくべきアクティビティが存在する場合は、応答待ちにしておく。
例えば、サービスＢ１から再開するときに、サブビジネスプロセスＡ定義中のビジネスプロセスＢを応答待ちにしておく。
応答待ちにする方法としては、アクティビティに対応するコンポーネントに応答待ち状態にするためのＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）を設けてもよいし、ビジネスプロセス実行部Ａ（１１１）が「ビジネスプロセスＢ」アクティビティを実行し、ビジネスプロセス実行部Ｂ（２１１）ではビジネスプロセス実行部Ａ（１１１）からの呼出しを無視するようにしてもよい。
【００４７】
以上のように、実施の形態１では、プロセスインスタンスの各アクティビティを実行したあとの状態を保存し、プロセスインスタンスの各アクティビティを実行する前の状態を取得することができるビジネスプロセス再開用計算機を設けたことにより、ビジネスプロセスインスタンスを任意の箇所に戻すためのデータ保存時に、関連するＥＳＢ実行計算機の変数を参照するという問題を回避している。
また、変数データベースに変数を逐次保存することにより、ＥＳＢ実行計算機が停電などでダウンした後でも、ビジネスプロセスインスタンスを任意のアクティビティから再開できるという耐障害性が追加される。
【００４８】
以上、本実施の形態では、以下の手段を備えた任意の箇所からプロセスインスタンスを再開することが出来るＥＳＢ実行計算機およびビジネスプロセス再開用計算機を説明した。
（ａ）各プロセスインスタンスの変数を保存するための変数データベース、
（ｂ）ビジネスプロセス実行機能から変数を受信し、変数データベースに変数を保存するための変数保存機能、
（ｃ）ユーザの再開指示をうけビジネスプロセスインスタンスの各アクティビティの実行状態を格納した再開要求をビジネスプロセス実行機能に送信するビジネスプロセス再開機能、
（ｄ）ビジネスプロセス再開機能からの再開要求を受信し、ビジネスプロセスの再開処理を実行するビジネスプロセス実行機能。
【００４９】
最後に、実施の形態１に示したビジネスプロセス再開用計算機４、ＥＳＢ実行計算機Ａ（１１）、ＥＳＢ実行計算機Ｂ（２１）（以下、まとめてビジネスプロセス再開用計算機４等と呼ぶ）のハードウェア構成例について説明する。
図１２は、実施の形態１に示すビジネスプロセス再開用計算機４等のハードウェア資源の一例を示す図である。
なお、図１２の構成は、あくまでもビジネスプロセス再開用計算機４等のハードウェア構成の一例を示すものであり、ビジネスプロセス再開用計算機４等のハードウェア構成は図１２に記載の構成に限らず、他の構成であってもよい。
【００５０】
図１２において、ビジネスプロセス再開用計算機４等は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。
ＣＰＵ９１１は、バス９１２を介して、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９１３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９１４、通信ボード９１５、表示装置９０１、キーボード９０２、マウス９０３、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。
更に、ＣＰＵ９１１は、ＦＤＤ９０４（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）、コンパクトディスク装置９０５（ＣＤＤ）、プリンタ装置９０６、スキャナ装置９０７と接続していてもよい。また、磁気ディスク装置９２０の代わりに、光ディスク装置、メモリカード（登録商標）読み書き装置などの記憶装置でもよい。
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
実施の形態１で説明した「変数データベース４２」、「ビジネスプロセス定義記憶部１１２」は、ＲＡＭ９１４、磁気ディスク装置９２０等により実現される。
通信ボード９１５、キーボード９０２、マウス９０３、スキャナ装置９０７、ＦＤＤ９０４などは、入力装置の一例である。
また、通信ボード９１５、表示装置９０１、プリンタ装置９０６などは、出力装置の一例である。
【００５１】
通信ボード９１５は、図１に示すように、ネットワークに接続されている。例えば、通信ボード９１５は、ＬＡＮ（ローカルエリアネットワーク）、インターネット、ＷＡＮ（ワイドエリアネットワーク）、ＳＡＮ（ストレージエリアネットワーク）などに接続されていても構わない。
【００５２】
磁気ディスク装置９２０には、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。
プログラム群９２３のプログラムは、ＣＰＵ９１１がオペレーティングシステム９２１、ウィンドウシステム９２２を利用しながら実行する。
【００５３】
また、ＲＡＭ９１４には、ＣＰＵ９１１に実行させるオペレーティングシステム９２１のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、ＲＡＭ９１４には、ＣＰＵ９１１による処理に必要な各種データが格納される。
【００５４】
また、ＲＯＭ９１３には、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）プログラムが格納され、磁気ディスク装置９２０にはブートプログラムが格納されている。
ビジネスプロセス再開用計算機４等の起動時には、ＲＯＭ９１３のＢＩＯＳプログラム及び磁気ディスク装置９２０のブートプログラムが実行され、ＢＩＯＳプログラム及びブートプログラムによりオペレーティングシステム９２１が起動される。
【００５５】
上記プログラム群９２３には、実施の形態１の説明において「〜部」（「ビジネスプロセス定義記憶部１１２」以外、以下同様）として説明している機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
【００５６】
ファイル群９２４には、実施の形態１の説明において、「〜の判断」、「〜の判定」、「〜の演算」、「〜の計算」、「〜の実行」、「〜の再実行」、「〜の再開」、「〜の比較」、「〜の抽出」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのＣＰＵの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態１で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、ＦＤＤ９０４のフレキシブルディスク、ＣＤＤ９０５のコンパクトディスク、磁気ディスク装置９２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ等の記録媒体に記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００５７】
また、実施の形態１の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。
すなわち、実施の形態１で説明したフローチャートに示すステップ、手順、処理により、本発明に係る管理方法及びデータ処理制御方法を実現することができる。
また、「〜部」として説明しているものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、実施の形態１の「〜部」としてコンピュータを機能させるものである。あるいは、実施の形態１の「〜部」の手順や方法をコンピュータに実行させるものである。
【００５８】
このように、実施の形態１に示すビジネスプロセス再開用計算機４等は、処理装置たるＣＰＵ、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
【符号の説明】
【００５９】
１  ＳＯＡシステムＡ、２  ＳＯＡシステムＢ、３  ネットワーク、４  ビジネスプロセス再開用計算機、１１  ＥＳＢ実行計算機Ａ、１２  サービス実行計算機、１３  ネットワーク、１４  サービス実行計算機、２１  ＥＳＢ実行計算機Ｂ、２２  サービス実行計算機、２３  ネットワーク、４０  通信部、４１  変数保存部、４２  変数データベース、４３  ビジネスプロセス再開部、４４  入力部、１１１  ビジネスプロセス実行部、１１２  ビジネスプロセス定義記憶部、１２１  サービス実行基盤、１４１  サービス実行基盤、２２１  サービス実行基盤、４２１  バージョン管理表、４２２  変数管理表、１１１１  サブビジネスプロセスＡインスタンス、１２１１  サービスＡ１、１２１２  サービスＡ２、１４１１  サービスＡ３、２１１１  サービスＢ１、２２１２  サービスＢ２。
【図１】
0005537917.tif 000002
【図２】
0005537917.tif 000003
【図３】
0005537917.tif 000004
【図４】
0005537917.tif 000005
【図５】
0005537917.tif 000006
【図６】
0005537917.tif 000007
【図７】
0005537917.tif 000008
【図８】
0005537917.tif 000009
【図９】
0005537917.tif 000010
【図１０】
0005537917.tif 000011
【図１１】
0005537917.tif 000012
【図１２】
0005537917.tif 000013