(57)【要約】【課題】複数の物理マシンに分散した処理を連携させるために必要な時間を短縮する。【解決手段】第１の処理部が第２の処理部から受信した第２の処理結果と識別子とを，第１の処理結果に関連付けて第１の記憶部に記憶し，その後に実行された第１の処理の処理結果が第１の記憶部に記憶されている第１の処理結果と一致する場合に，第１の処理部が，第１の処理結果と関連付けて記憶されている第２の処理結果と識別子を抽出し，識別子によって識別した第３の処理部に第２の処理結果を送信する。【選択図】図６
2015207148.tif 000002
【特許請求の範囲】
【請求項１】
第１の処理部が第１の処理を実行した結果である第１の処理結果を，第１の記憶部に記憶するとともに第２の処理部に送信する第１の工程と，
前記第２の処理部が前記第１の処理部から受信した前記第１の処理結果に基づいて第２の処理を実行した結果である第２の処理結果を，第２の記憶部に記憶するとともに第３の処理部に送信し，前記第２の処理結果と前記第３の処理部を識別する識別子とを，前記第１の処理部に送信する第２の工程と，
前記第１の処理部が前記第２の処理部から受信した前記第２の処理結果と前記識別子とを，前記第１の処理結果に関連付けて前記第１の記憶部に記憶する第３の工程と，
前記第３の工程の後に実行された前記第１の処理の処理結果が前記第１の記憶部に記憶されている前記第１の処理結果と一致する場合に，前記第１の処理部が，前記第１の処理結果と関連付けて記憶されている前記第２の処理結果と前記識別子を抽出し，前記識別子によって識別した前記第３の処理部に前記第２の処理結果を送信する第４の工程と，を有する
処理連携方法。
【請求項２】
請求項１において，
前記第２の工程では，前記第１の処理結果によって前記第２の処理結果が一意に定まる場合に，前記第１の処理部への送信を行う処理連携方法。
【請求項３】
請求項１において，
前記第２の工程では，前記第２の処理部が前記第１の処理部から前記第１の処理結果を受信した受信回数が所定の閾値を超えた場合に，前記第１の処理部への送信を行う処理連携方法。
【請求項４】
請求項１において，さらに，
前記第１の処理部が前記第１の記憶部から抽出した前記第２の処理結果を前記第３の処理部に送信した送信回数を記憶する第５の工程を有する処理連携方法。
【請求項５】
請求項４において，
前記第５の工程では，前記送信回数が所定の閾値を超えた場合に，前記第１の処理部が記憶した前記送信回数を前記第２の処理部に送信する処理連携方法。
【請求項６】
請求項１において
前記第２の工程の前に，前記第２の処理部が該第２の処理よりも後に実行される処理の処理結果と識別子とを受信している場合，前記第２の工程では，前記第３の処理部への送信を，前記第２の処理部が前記受信した識別子が示す処理部のうち最後に処理が実行される処理部に，前記第２の処理結果を送信することにより行い，前記第１の処理部への送信を，前記第２の処理結果と前記識別子と前記第２の処理部が受信した処理結果と前記第２の処理部が受信した識別子とを送信することにより行い，
前記第３の工程では，前記第１の処理部が前記第２の処理部から受信した処理結果と識別子とを前記第１の処理結果に関連付けて前記第１の記憶部に記憶し，
前記第４の工程では，前記第３の処理部への送信を，記憶されている前記第１の処理結果と関連付けて記憶された識別子のうち最後に処理が実行される処理部を示す識別子と，記憶されている前記第１の処理結果と関連付けて記憶された処理結果のうち最後に実行される処理の処理結果とを抽出し，前記最後に処理が実行される処理部に前記抽出した処理結果を送信することにより行う処理連携方法。
【請求項７】
請求項１において，さらに，
前記第３の工程の後に実行される第２の処理の処理結果が，前記第２の処理結果と異なる処理結果になる可能性がある場合，前記第２の処理結果と関連付けて記憶された情報を消去する第６の工程を有する処理連携方法。
【請求項８】
請求項１において，さらに，
前記第２の処理部が該第２の処理よりも後に処理が実行される処理部から処理結果と識別子を受信した場合，前記第２の処理部が前記第１の処理部に前記第２の処理結果と前記識別子と前記第２の処理が受信した処理結果と前記第２の処理が受信した識別子とを送信する第７の工程を有する処理連携方法。
【請求項９】
請求項１において，
前記第１の処理と，前記第２の処理と，前記第３の処理は，入力データに基づいてクエリ処理を行い，該クエリ処理の結果を出力する処理連携方法。
【請求項１０】
請求項１において，
前記第１の工程では，前記第１の処理部が前記第２の処理部に前記第１の処理部を識別する識別子を送信し，
前記第２の工程では，前記第２の処理部が前記第３の処理部に前記第１の処理部を識別する識別子を送信し，
前記第４の工程では，前記第１の処理部が前記第３の処理部に前記第１の処理部を識別する識別子を送信する処理連携方法。
【請求項１１】
第１の処理部が第１の処理を実行した結果である第１の処理結果を，第１の記憶部に記憶するとともに第２の処理部に送信し，
前記第２の処理部が前記第１の処理部から受信した前記第１の処理結果に基づいて第２の処理を実行した結果である第２の処理結果を，第２の記憶部に記憶するとともに第３の処理部に送信し，前記第２の処理結果と前記第３の処理部を識別する識別子とを，前記第１の処理部に送信し，
前記第１の処理部が前記第２の処理部から受信した前記第２の処理結果と前記識別子とを，前記第１の処理結果に関連付けて前記第１の記憶部に記憶し，
前記第１の処理の処理結果が前記第１の記憶部に記憶されている前記第１の処理結果と一致する場合に，前記第１の処理部が，前記第１の処理結果と関連付けて記憶されている前記第２の処理結果と前記識別子を抽出し，前記識別子によって識別した前記第３の処理部に前記第２の処理結果を送信する
処理をコンピュータに実行させる処理連携プログラム。
【請求項１２】
第１の処理部と，第２の処理部と，第３の処理部とを有する処理連携システムであって，
前記第１の処理部は，第１の処理を実行した結果である第１の処理結果を，第１の記憶部に記憶するとともに第２の処理部に送信し，
前記第２の処理部は，前記第１の処理部から受信した前記第１の処理結果に基づいて第２の処理を実行した結果である第２の処理結果を，第２の記憶部に記憶するとともに第３の処理部に送信し，前記第２の処理結果と前記第３の処理部を識別する識別子とを，前記第１の処理部に送信し，
前記第１の処理部は，さらに，前記第１の処理部が前記第２の処理部から受信した前記第２の処理結果と前記識別子とを，前記第１の処理結果に関連付けて前記第１の記憶部に記憶し，
前記第１の処理部は，さらに，前記第１の処理の処理結果が前記第１の記憶部に記憶されている前記第１の処理結果と一致する場合に，前記第１の処理部が，前記第１の処理結果と関連付けて記憶されている前記第２の処理結果と前記識別子を抽出し，前記識別子によって識別した前記第３の処理部に前記第２の処理結果を送信する
処理連携システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，処理連携方法，処理連携プログラム及び処理連携システム関する。
【背景技術】
【０００２】
例えば，業務システム（顧客管理システム等）では，複数の処理を連携させて実行することにより，要求（入力データ）に対する結果（出力データ）を出力する機能を有するものがある。このような業務システムにおいて，各処理は，例えば，前の処理が実行した処理結果を受信したときに処理を実行する。そして，各処理は，予め定められた次の処理に自処理の処理結果を送信する。これにより，各処理は，連携しながら処理を実行することが可能になる（例えば，特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１０−１０５４２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記のような業務システムで行われる処理において，同じ入力データに対して同じ処理結果を出力する処理が存在する場合がある。このような場合，各処理は，入力データと出力データの組合せを記憶しておくことにより，新たに受信した入力データが過去に記憶した入力データと一致する場合には，処理を行うことなく受信した入力データに対応する出力データを次の処理に送信する。これによって，例えば，業務システム全体における処理時間を短縮させることが可能になる。
【０００５】
しかしながら，業務システムで行われる各処理が，複数の物理マシンに分散している場合がある。そして，例えば，上記の業務システムがビッグデータのように膨大なデータの処理を行うシステムである場合には，複数の物理マシン間における通信に要する時間が膨大なものになる。そのため，各処理において入力データと出力データの組合せの記憶を行っても，業務システム全体における処理時間を短縮することが困難である場合がある。
【０００６】
そこで，一つの実施の形態の目的は，複数の物理マシンに分散した処理を連携させるために必要な時間を短縮する処理連携方法，処理連携プログラム及び処理連携システムを提供することにある。
【課題を解決するための手段】
【０００７】
実施の形態の一つの側面によれば，第１の処理部が第１の処理を実行した結果である第１の処理結果を，第１の記憶部に記憶するとともに第２の処理部に送信する第１の工程と，
前記第２の処理部が前記第１の処理部から受信した前記第１の処理結果に基づいて第２の処理を実行した結果である第２の処理結果を，第２の記憶部に記憶するとともに第３の処理部に送信し，前記第２の処理結果と前記第３の処理部を識別する識別子とを，前記第１の処理部に送信する第２の工程と，
前記第１の処理部が前記第２の処理部から受信した前記第２の処理結果と前記識別子とを，前記第１の処理結果に関連付けて前記第１の記憶部に記憶する第３の工程と，
前記第３の工程の後に実行された前記第１の処理の結果である第１の処理結果が前記第１の記憶部に記憶されている場合に，前記第１の処理部が，前記第１の記憶部に記憶されている前記第１の処理結果と関連付けて記憶された前記第２の処理結果と前記識別子を抽出し，前記識別子によって識別した第３の処理部に前記第２の処理結果を送信する第４の工程と，を有する。
【発明の効果】
【０００８】
一つの側面によれば，複数の物理マシンに分散した処理を連携させるために必要な時間を短縮する。
【図面の簡単な説明】
【０００９】
【図１】情報処理システムの全体構成を示す図である。
【図２】物理マシンのハードウエア構成を示す図である。
【図３】図２で示した物理マシンの機能ブロック図である。
【図４】複数の処理部が連携して処理実行をする場合を説明する図である。
【図５】複数の処理部が連携して処理実行をする場合を説明する図である。
【図６】第１の実施の形態における実行管理処理の概略を説明するシーケンスチャート図である。
【図７】第１の実施の形態における実行管理処理の概略を説明する図である。
【図８】第１の実施の形態における実行管理処理の概略を説明する図である。
【図９】第１の実施の形態における実行管理処理の概略を説明する図である。
【図１０】第１の実施の形態における実行管理処理の概略を説明する図である。
【図１１】第１の実施の形態における実行管理処理の概略を説明する図である。
【図１２】第１の実施の形態における実行管理処理の詳細を説明するフローチャート図である。
【図１３】第１の実施の形態における実行管理処理の詳細を説明するフローチャート図である。
【図１４】第１の実施の形態における実行管理処理の詳細を説明するフローチャート図である。
【図１５】第１の実施の形態における実行管理処理におけるスキップ無効指示を説明する図である。
【図１６】第１の実施の形態における実行管理処理の具体例を説明するシーケンスチャート図である。
【図１７】第１の実施の形態における実行管理処理の具体例を説明するシーケンスチャート図である。
【図１８】第１の実施の形態における実行管理処理の具体例を説明するシーケンスチャート図である。
【図１９】第１の実施の形態における実行管理処理の具体例を説明する図である。
【図２０】第２の実施の形態における実行管理処理の具体例を説明するシーケンスチャート図である。
【図２１】第２の実施の形態における実行管理処理の具体例を説明するシーケンスチャート図である。
【図２２】第２の実施の形態における実行管理処理を説明する図である。
【図２３】第２の実施の形態における実行管理処理を説明する図である。
【図２４】第２の実施の形態における処理情報を説明する図である。
【図２５】第２の実施の形態における処理情報を説明する図である。
【図２６】第２の実施の形態における処理情報を説明する図である。
【図２７】第２の実施の形態における実行管理処理の具体例を説明するシーケンスチャート図である。
【図２８】第２の実施の形態における処理情報を説明する図である。
【図２９】第２の実施の形態における実行管理処理におけるスキップ無効指示を説明するシーケンスチャート図である。
【図３０】第２の実施の形態における処理情報を説明する図である。
【図３１】第３の実施の形態における実行管理処理を説明する図である。
【図３２】第３の実施の形態における実行管理処理を説明する図である。
【発明を実施するための形態】
【００１０】
［情報処理システムの構成］
図１は，情報処理システムの全体構成を示す図である。図１に示す情報処理システム１０（以下，処理連携システム１０とも呼ぶ）において，物理マシン１Ａ，物理マシン１Ｂ及び物理マシン１Ｃは，インターネットやイントラネット等のネットワークを介して互いにアクセス可能になっている。また，クライアント端末２は，ネットワークを介して，物理マシン１Ａ，物理マシン１Ｂ及び物理マシン１Ｃとアクセス可能になっている。各物理マシンは，例えば，データセンターに配備されているものであってよい。図１の例においては，３つの物理マシンからなる場合について説明するが，２台以下または４台以上の物理マシンからなる構成であってもよい。
【００１１】
各物理マシンは，例えば，クライアント端末２から処理要求データ（以下，データまたは入力データとも呼ぶ）を受信した場合に，これに基づいて処理を行う。そして，処理を行った物理マシンは，処理要求データを送信したクライアント端末２に対して処理結果を送信する。このクライアント端末２は，例えば，ユーザ（以下，契約者とも呼ぶ）に対してサービスを提供する事業者が物理マシンに処理を実行させるために使用するものであってよい。また，直接ユーザが物理マシンに処理を実行させるために使用するものであってよい。
【００１２】
各物理マシンが行う処理は，例えば，物理マシンに常駐しているクエリによって実行されるクエリ処理である。このクエリ処理は，例えば，入力データを受信する毎に継続的に処理を実行して処理結果を出力するＣｏｍｐｌｅｘ Ｅｖｅｎｔ Ｐｒｏｃｅｓｓｉｎｇ（以下，ＣＥＰとも呼ぶ）であってよい。この場合における入力データは，クライアント端末２から入力されたデータのみでなく，例えば，契約者が所有する携帯電話，契約者の住宅に設置された人感センサ，気象衛星等によって継続的に取得されるものであってもよい。そして，各物理マシンでは，これらの入力データに基づいて処理を行うことにより，自宅の状況（不審者の有無）や自宅近辺の天気等の契約者に有益な情報を，適切なタイミングで契約者に知らせることが可能になる。
【００１３】
図２は，物理マシンのハードウエア構成を示す図である。図２に示す物理マシン１Ａは，プロセッサであるＣＰＵ（プロセッサ）１０１Ａと，メモリ１０２Ａと，記憶媒体１０３Ａと，外部インターフェース１０４Ａ（Ｉ／Ｏユニット１０４Ａ）と，を有する。各部は，バス１０６Ａを介して互いに接続される。記憶媒体１０３Ａは，例えば，記憶媒体１０３Ａ内のプログラム格納領域（図示しない）に，各処理の実行を管理する処理（以下，実行管理処理とも呼ぶ）を行うためのプログラム１１０Ａを記憶する。ＣＰＵ１０１Ａは，図２に示すように，プログラム１１０Ａの実行時に，プログラム１１０Ａを記憶媒体１０３Ａからメモリ１０２Ａにロードし，プログラム１１０Ａを実行して実行管理処理を行う。また，記憶媒体１０３Ａは，例えば，実行管理処理を行う際に用いられる情報を記憶する情報格納領域１２０Ａ（以下，第１の記憶部１２０Ａとも呼ぶ）を有する。
【００１４】
また，図２に示す物理マシン１Ｂは，物理マシン１Ａと同様に，ＣＰＵ（プロセッサ）１０１Ｂと，メモリ１０２Ｂと，記憶媒体１０３Ｂと，外部インターフェース１０４Ｂ（Ｉ／Ｏユニット１０４Ｂ）と，を有する。各部は，バス１０６Ｂを介して互いに接続される。記憶媒体１０３Ｂは，プログラム１１０Ｂを記憶する。ＣＰＵ１０１Ｂは，図２に示すように，プログラム１１０Ｂの実行時に，プログラム１１０Ｂを記憶媒体１０３Ｂからメモリ１０２Ｂにロードし，プログラム１１０Ｂを実行して実行管理処理を行う。また，記憶媒体１０３Ｂは，例えば，情報格納領域１２０Ｂ（以下，第２の記憶部１２０Ｂとも呼ぶ）を有する。
【００１５】
さらに，図２に示す物理マシン１Ｃは，物理マシン１Ａと同様に，ＣＰＵ（プロセッサ）１０１Ｃと，メモリ１０２Ｃと，記憶媒体１０３Ｃと，外部インターフェース１０４Ｃ（Ｉ／Ｏユニット１０４Ｃ）と，を有する。各部は，バス１０６Ｃを介して互いに接続される。記憶媒体１０３Ｃは，プログラム１１０Ｃを記憶する。ＣＰＵ１０１Ｃは，図２に示すように，プログラム１１０Ｃの実行時に，プログラム１１０Ｃを記憶媒体１０３Ｃからメモリ１０２Ｃにロードし，プログラム１１０Ｃを実行して実行管理処理を行う。また，記憶媒体１０３Ｃは，例えば，情報格納領域１２０Ｃ（以下，第３の記憶部１２０Ｃとも呼ぶ）を有する。
【００１６】
図３は，図２で示した物理マシンの機能ブロック図である。図３においては，物理マシン１Ａの機能ブロック図を示している。なお，物理マシン１Ｂ及び物理マシン１Ｃの機能ブロック図は，物理マシン１Ａと同一であるため省略する。ＣＰＵ１０１Ａは，プログラム１１０Ａを実行することにより，例えば，処理部１１１Ａ（以下，第１の処理部１１１Ａとも呼ぶ）と，データ受信部１１２Ａと，データ送信部１１３Ａと，送信回数記憶部１１４Ａと，処理情報記憶部１１５Ａと，突合せ情報記憶部１１６Ａと，処理情報消去部１１７Ａとして動作する。また，情報格納領域１２０Ａには，例えば，突合せ情報１２１Ａと，処理情報１２２Ａと，スキップ可否情報１２３Ａと，処理接続情報１２４Ａとが記憶されている。
【００１７】
また，ＣＰＵ１０１Ｂは，プログラム１１０Ｂを実行することにより，例えば，処理部１１１Ｂ（以下，第２の処理部１１１Ｂとも呼ぶ）と，データ受信部１１２Ｂと，データ送信部１１３Ｂと，送信回数記憶部１１４Ｂと，処理情報記憶部１１５Ｂと，突合せ情報記憶部１１６Ｂと，処理情報消去部１１７Ｂとして動作する。また，情報格納領域１２０Ｂには，例えば，突合せ情報１２１Ｂと，処理情報１２２Ｂと，スキップ可否情報１２３Ｂと，処理接続情報１２４Ｂとが記憶されている。
【００１８】
さらに，ＣＰＵ１０１Ｃは，プログラム１１０Ｃを実行することにより，例えば，処理部１１１Ｃ（以下，第３の処理部１１１Ｃとも呼ぶ）と，データ受信部１１２Ｃと，データ送信部１１３Ｃと，送信回数記憶部１１４Ｃと，処理情報記憶部１１５Ｃと，突合せ情報記憶部１１６Ｃと，処理情報消去部１１７Ｃとして動作する。また，情報格納領域１２０Ｃには，例えば，突合せ情報１２１Ｃと，処理情報１２２Ｃと，スキップ可否情報１２３Ｃと，処理接続情報１２４Ｃとが記憶されている。
【００１９】
図４及び図５は，複数の処理部が連携して処理実行をする場合を説明する図である。以下，図４及び図５に示すように，初めに、入力データに基づいて処理部１１１Ａが第１の処理を行い，第１の処理の実行結果である第１の処理結果に基づいて処理部１１１Ｂが第２の処理を行い，さらに，第２の処理の実行結果である第２の処理結果に基づいて処理部１１１Ｃが第３の処理を行う処理連携システム１０について説明する。また，以下，物理マシン１Ａの機能について説明を行い，物理マシン１Ｂ及び物理マシン１Ｃの機能については説明を省略する。なお，図４及び図５の例における処理部１１１Ａは，例えば，事業者や契約者が入力したデータに基づいて第１の処理を行い，処理部１１１Ｃは，第３の処理を実行した処理結果を出力データとして事業者や契約者に返す。
【００２０】
図４に示すように，処理部１１１Ａは，例えば，契約者からの入力データに基づいて第１の処理を実行する。そして，処理部１１１Ａは，例えば，後述する処理情報記憶部１１５によって，第１の処理を実行した結果である第１の処理結果を情報格納領域１２０Ａに記憶する。さらに，処理部１１１Ａは，例えば，各処理部が処理結果を送信すべき情報を記憶した処理接続情報１２４Ａを参照して，第１の処理結果を第２の処理部１１１Ｂに送信する。なお，処理部１１１Ａは，例えば，後述するデータ送信部１１３Ａによって処理結果等のデータの送信を行う。
【００２１】
次に，処理部１１１Ｂは，例えば，処理部１１１Ａから第１の処理結果に基づいて第２の処理を実行する。そして，処理部１１１Ｂは，例えば，第２の処理を実行した結果である第２の処理結果を情報格納領域１２０Ｂに記憶し，第２の処理結果を第３の処理部１１１Ｃに送信する。さらに，処理部１１１Ｂは，例えば，処理部１１１Ｂが第２の処理結果を送信した処理部１１１Ｃの識別子と，第２の処理結果とを処理部１１１Ａに送信する。具体的に，処理部１１１Ｂは，例えば，自処理が入力データによって出力データが一意に定まる処理（以下，スキップ可能な処理とも呼ぶ）であるか否かの情報を記憶するスキップ可否情報１２３Ａを参照する。そして，処理部１１１Ｂは，自処理がスキップ可能である場合に，処理部１１１Ｃの識別子と第２の処理結果を処理部１１１Ａに送信するものであってよい。処理部のスキップについては後述する。
【００２２】
次に，処理部１１１Ｂから識別子と第２の処理結果とを受信した処理部１１１Ａは，例えば，後述する処理情報記憶部１１５によって，受信した識別子と第２の処理結果とを第１の処理結果と関連付けて記憶する。そして，その後処理部１１１Ａにおいて実行された第１の処理の処理結果が，過去に処理部１１１Ａが記憶した第１の処理結果と一致する場合，その第１の処理結果と関連付けて記憶されている第２の処理結果と識別子とを抽出する。さらに，処理部１１１Ａは，抽出した識別子によって識別される処理部１１１Ｃに，抽出した第２の処理結果を送信する。
【００２３】
データ受信部１１２Ａは，例えば，他の処理部によって実行された処理結果や契約者等が入力したデータを受信し，処理部１１１Ａに引き渡す。
【００２４】
データ送信部１１３Ａは，例えば，処理部１１１Ａによる第１の処理の処理結果を他の処理部に送信する。また，データ送信部１１３Ａは，例えば，送信回数記憶部１１４Ａにおいて記憶された送信回数を他の処理部に送信する。
【００２５】
送信回数記憶部１１４Ａは，例えば，図４において，処理部１１１Ａが処理部１１１Ｂに処理結果を送信せずに，処理部１１１Ｂよりも後に実行される処理部１１１Ｃに処理結果を送信した場合に，その回数を記憶する。
【００２６】
処理情報記憶部１１５Ａは，例えば，処理部１１１Ａからの指示に基づいて，処理部１１１Ａによって実行された第１の処理による第１の処理結果や他の処理部から受信した処理結果等を処理情報１２２Ａとして記憶する。
【００２７】
突合せ情報記憶部１１６Ａは，例えば，処理部１１１Ａにおいて第１の処理を行う際に用いられる突合せ情報１２３Ａを記憶する。突合せ情報１２３Ａについては後述する。また，処理情報消去部１１７Ａは，例えば，情報格納領域１２０Ａに記憶されている処理情報１２２Ａを消去する。
【００２８】
［各処理が複数物理マシンで機能する場合の具体例］
図５は，処理部１１１Ａ，処理部１１１Ｂ，処理部１１１Ｃがそれぞれ異なる物理マシンである物理マシン１Ａ，物理マシン１Ｂ，物理マシン１Ｃにおいて機能する場合の図である。図５の例における処理連携システム１０は，それぞれの処理を実行する毎に，物理マシン間の通信を行う必要がある。そのため，例えば，処理連携システム１０がビッグデータのように膨大なデータの処理を行うシステムである場合，処理を行うために必要な通信量及び通信時間が膨大なものになる。
【００２９】
そこで，本実施の形態では，処理部１１１Ａにおける第１の処理結果に関連して，第１の処理結果に基づいて実行された処理部１１１Ｂにおける第２処理結果と，第２の処理結果に基づいて実行される処理部１１１Ｃの識別子とを記憶する。そして，その後実行された処理部１１１Ａにおける処理結果と，記憶されている第１の処理結果とが一致する場合，処理部１１１Ａは，第１の処理結果と関連付けて記憶されている第２の処理結果を処理部１１１Ｃに送信し，処理量を抑制する。
【００３０】
［第１の実施の形態］
最初に第１の実施の形態について説明する。図６は，第１の実施の形態における実行管理処理の概略を説明するシーケンスチャート図である。また，図７から図１１は，第１の実施の形態における実行管理処理の概略を説明する図である。図７から図１１を参照しながら，図６の実行管理処理を説明する。
【００３１】
［図７の処理連携システムの構成］
初めに，図７の例における処理連携システム１０の構成について説明する。図７における処理連携システム１０は，契約者の自宅における人の在不在情報を取得するものである。すなわち，処理連携システム１０は，契約者の外出時（自宅に誰もいない状況）において契約者の自宅に人の存在を検出した場合，例えば，不審者が契約者の自宅に侵入している可能性があると判断するものである。そして，この場合，処理連携システム１０は，例えば，契約している警備会社に連絡を行う。
【００３２】
図７において，処理連携システム１０は，振分処理部１１１Ａ（処理部１１１Ａ）と，契約突合せ処理部１１１Ｂ（処理部１１１Ｂ）と，人感検出処理部１１１Ｃ（処理部１１１Ｃ）とを有する。振分処理部１１１Ａは，例えば，入力データの内容に基づいて，入力データを処理すべき後続処理に振分ける処理である。振分処理部１１１Ａは，例えば，処理連携システム１０の負荷分散の観点から，入力データの契約者ＩＤに基づいて後続処理を決定するものであってよい。また，契約突合せ処理部１１１Ｂは，例えば，振分処理部１１１Ａにおける処理結果及び契約情報１２１Ａに基づいて処理を行い，その処理結果を処理すべき後続処理に送信する。また，人感検出処理部１１１Ｃは，例えば，契約突合せ処理部１１１Ｂにおける処理結果及び在不在情報１２１Ｂに基づいて処理を行い，その処理結果を処理すべき後続処理に送信する。なお，図７の例においては，振分処理部１１１Ａの後続処理は契約突合せ処理部１１１Ｂのみであり，契約突合せ処理部１１１Ｂの後続処理は人感検出処理部１１１Ｃのみであるものとして説明を行う。
【００３３】
また，図８は，契約情報１２１Ａ及び在不在情報１２１Ｂの内容を説明する図である。図８（Ａ）に示すように，契約情報１２１Ａが有する項目は，例えば，契約者ＩＤと，センサＩＤと，センサ名とからなる。図８（Ａ）の例においては，契約者ＩＤが「１２３」である契約者は，センサＩＤが「３」である「室温センサ」と，センサＩＤが「１２」である「人感センサ」について契約をしていることを示している。また，契約者ＩＤが「１２４」である契約者は，センサＩＤが「３」である「室温センサ」と，センサＩＤが「１７」である「湿度センサ」について契約をしていることを示している。さらに，契約者ＩＤが「１２５」である契約者は，センサＩＤが「３」である「室温センサ」について契約をしていることを示している。そして，図８（Ｂ）の例において，在不在情報１２１Ｂは，契約者ＩＤが「１２３」である契約者は「不在」であり，契約者ＩＤが「１２４」及び「１２５」である契約者は「在（在宅）」であることを示している。なお，契約情報１２１Ａに記憶されているセンサＩＤ及びセンサ名は，例えば，契約者による契約時に，処理連携システム１０の突合せ情報記憶部１１６Ａが契約情報１２１Ａに記憶するものであってよい。また，在不在情報１２１Ｂの在不在状況は，例えば，処理連携システム１０の突合せ情報記憶部１１６Ａが契約者の携帯電話から契約者の位置情報を取得し，契約者の在不在を判断して在不在情報１２１Ｂを記憶（更新）するものであってよい。
【００３４】
［処理連携システムにおける従来の処理の流れ］
次に，図７の処理連携システム１０における従来の処理の流れについて説明する。図７の例において，初めに，振分処理部１１１Ａは，契約者ＩＤが「１２３」であり，センサＩＤが「１２」であり，在宅情報が「不在」である入力データを受信する。そして，振分処理部１１１Ａは，例えば，入力データの契約者ＩＤを確認し，契約者ＩＤが「１２３」である契約者のデータを処理すべき契約突合せ処理部１１１Ｂに，処理結果を送信する。なお，図７の例において，振分処理部１１１Ａは，受信した入力データを処理結果（出力データ）としてそのまま契約突合せ処理部１１１Ｂに送信している。
【００３５】
そして，振分処理部１１１Ａの処理結果（出力データ）を受信した契約突合せ処理部１１１Ｂは，図７の例においては，受信したデータのセンサＩＤと契約情報１２１Ａとの突合せを行う。具体的に，受信したデータにおけるセンサＩＤは「１２」である。さらに，契約情報１２１Ａにおいて，契約者ＩＤが「１２３」である契約者はセンサＩＤが「１２」である「人感センサ」について契約している。そのため，契約突合せ処理部１１１Ｂは，人感検出処理部１１１Ｃに処理結果を送信する。具体的に，例えば，契約突合せ処理部１１１Ｂは，契約者ＩＤが「１２３」であり，在宅情報が「不在」である情報からなる処理結果を人感検出処理部１１１Ｃに送信する。なお，契約突合せ処理部１１１Ｂが受信したセンサＩＤの情報が契約情報１２１Ａにない場合，契約突合せ処理部１１１Ｂは，入力データが不正であると判断するものであってよい。この場合，契約突合せ処理部１１１Ｂは，例えば，入力データを入力した事業者や契約者にエラーを返すものであってもよい。
【００３６】
さらに，契約突合せ処理部１１１Ｂの処理結果を受信した人感検出処理部１１１Ｃは，例えば，受信したデータの在宅情報と在不在情報１２１Ｂとの突合せを行う。具体的に，受信したデータにおける在宅情報は「不在」である。さらに，在不在情報１２１Ｂにおいて，契約者ＩＤが「１２３」である契約者は在不在状況が「不在」である。そのため，人感検出処理部１１１は，入力データを入力した事業者または契約者に対し，例えば，「異常なし」の情報を含む処理結果（出力データ）を送信する。
【００３７】
なお，図７の例において，例えば，処理連携システム１０は，事業者や契約者によって入力データが入力されたときに処理を実行し，その処理結果を事業者や契約者に送信するものであってよい。また，図７の例において，例えば，処理連携システム１０は，予め定められた内容の入力データを自動で入力し，その処理結果を定期的に契約者に送信するものであってもよい。
【００３８】
［図６のＳ１からＳ６］
次に，図７の処理連携システム１０を参照しながら，図６の実行管理処理（本実施の形態における実行管理処理）の概要を説明する。なお，図６の例において，契約突合せ処理部１１１Ｂ（処理部１１１Ｂ）における処理は，契約情報１２１Ａに記憶されている内容に変更がない限り，契約突合せ処理部１１１Ｂへの入力データによって契約突合せ処理部１１１Ｂからの出力データが一意に定まる（契約突合せ処理部１１１Ｂがスキップ可能である）ものとする。
【００３９】
初めに，振分処理部１１１Ａ（処理部１１１Ａ）は，図９に示すように，入力データに基づいて処理を実行し，その処理結果（第１の処理結果）を処理情報１２２Ａとして情報格納領域１２０Ａに記憶する（Ｓ１）。そして，振分処理部１１１Ａは，振分処理部１１１Ａの処理結果を契約突合せ処理部１１１Ｂに送信する（Ｓ２）。
【００４０】
次に，契約突合せ処理部１１１Ｂは，図１０に示すように，振分処理部１１１Ａの処理結果に基づいて処理を実行し，その処理結果（第２の処理結果）を処理情報１２２Ｂとして情報格納領域１２０Ｂに記憶する（Ｓ３）。そして，契約突合せ処理部１１１Ｂは，契約突合せ処理部１１１Ｂの処理結果を人感検出処理部１１１Ｃ（処理部１１１Ｃ）に送信する（Ｓ４）。さらに，契約突合せ処理部１１１Ｂは，契約突合せ処理部１１１Ｂが処理結果を送信した処理部である人感検出処理部１１１Ｃを認識する識別子及び契約突合せ処理部１１１Ｂの処理結果（以下，スキップ判断情報とも呼ぶ）を振分処理部１１１Ａに送信する（Ｓ５）。そして，契約突合せ処理部１１１Ｂから識別子と契約突合せ処理部１１１Ｂの処理結果を受信した振分処理部１１１Ａは，受信した識別子及び処理結果と，振分処理部１１１Ａが情報格納領域１２０Ａに記憶した自処理の処理結果とを関連付けて情報格納領域１２０Ａに記憶する（Ｓ６）。また，人感検出処理部１１１Ｃは，図１０に示すように，契約突合せ処理部１１１Ｂの処理結果に基づいて処理を実行する。そして，図１０の例においては，その処理結果（第３の処理結果）を出力データとして，入力データを入力した契約者等に送信する。
【００４１】
すなわち，振分処理部１１１Ａが自処理の処理結果を記憶しておくことにより，契約突合せ処理部１１１Ｂの処理結果及び人感検出処理部１１１Ｃを認識する識別子を受信したときに，振分処理部１１１Ａの処理結果と，受信した情報を関連付けて記憶することができる。
【００４２】
なお，Ｓ２またはＳ４等において，各処理部は，自処理部において実行された処理結果とともに，自処理部を識別するための識別子を次の処理部に送信するものであってもよい。
【００４３】
［図６のＳ７，Ｓ８］
上記のＳ６の後，振分処理部１１１Ａが新たに受信した入力データに基づいて処理を実行した場合，振分処理部１１１Ａは，図１１に示すように，その処理結果が情報格納領域１２０Ａに記憶されている処理情報１２２Ａに含まれる処理結果とが一致するか否かの確認を行う（Ｓ７）。そして，一致する処理結果が記憶されていた場合，振分処理部１１１Ａは，記憶されていた処理結果と関連付けて記憶されている識別子が識別する処理部（図６の例においては人感検出処理部１１１Ｃ）に，同じく関連付けて記憶されている処理部の処理結果（図６の例においては契約突合せ処理部１１１Ｂ）の送信を行う（Ｓ８）。
【００４４】
すなわち，図６の例において，契約突合せ処理部１１１Ｂにおける処理は，入力データによって出力データが一意に定まるため，振分処理部１１１Ａの処理結果が定まったときに，契約突合せ処理部１１１Ｂにおける処理の出力データも一意に定まることになる。そして，図６の例において，振分処理部１１１Ａは，契約突合せ処理部１１１Ｂの入力データ，出力データ（処理結果），出力データの送信先（識別子）の情報を関連付けて記憶している。そのため，振分処理部１１１Ａは，契約突合せ処理部１１１Ｂの出力データの送信先である人感検出処理部１１１Ｃに，契約突合せ処理部１１１Ｂの出力データを送信することにより，処理連携システム１０において処理したデータの整合性を保ちつつ，契約突合せ処理部１１１Ｂにおける処理を省略（スキップ）することが可能になる。
【００４５】
このように，第１の実施の形態によれば，処理部１１１Ａは，処理部１１１Ａが自処理である第１の処理を実行した結果である第１の処理結果を，第１の記憶部１２０Ａに記憶するとともに，処理部１１１Ｂに送信する。次に，処理部１１１Ｂは，処理部１１１Ｂが処理部１１１Ａから受信した第１の処理結果に基づいて処理部１１１Ｂの第２の処理を実行した結果である第２の処理結果を，第２の記憶部１２０Ｂに記憶するとともに処理部１１１Ｃに送信する。そして，処理部１１１Ｂは，第２の処理結果と処理部１１１Ｃを識別する識別子とを処理部１１１Ａに送信する。そして，処理部１１１Ａは，処理部１１１Ａが処理部１１１Ｂから受信した第２の処理結果と処理部１１１Ｃを識別する識別子とを，第１の処理結果に関連付けて第１の記憶部１２０Ａに記憶する。さらに，その後に実行された第１の処理の処理結果が第１の記憶部１２０Ａに記憶されている処理結果と一致する場合に，処理部１１１Ａは，第１の処理結果と関連付けて記憶されている第２の処理結果と識別子を抽出し，抽出した識別子によって識別した処理部１１１Ｃに第２の処理結果を送信する。これにより，出力データを取得するために必要な処理を省略することが可能になる。そのため，各処理部が複数の物理マシンに分かれて機能する場合において，出力データを取得するために要する物理マシン間の通信を減少させることが可能になる。
【００４６】
［各処理部における処理がスキップ可能であるか否かの判断方法］  
事業者（処理連携システム１０の開発者）は，例えば，各処理部の機能を実現するプログラムの性質に基づいて，その処理部がスキップ可能であるか否かを定める。具体的に，例えば，事業者は，各処理部を実現するプログラムの開発時（例えば，コンパイラ時）において，そのプログラム内部の動作を解析する。そして，プログラムによって実現される機能が入力データに基づいて出力データが一意に定まるものであると判断した場合に，事業者は，その処理部における処理がスキップ可能であるとして，予めスキップ可否情報１２３Ａに記憶するものであってよい。また，事業者は，処理連携システム１０の稼動開始後における運用状況を基づき，入力データによって出力データが一意に定まる処理を抽出し，これに基づいてスキップ可能である処理部を決定（変更）するものであってもよい。
【００４７】
さらに，事業者は，例えば，サービスへの影響が発生しない場合に，同じ入力データから同じ出力データが出力される可能性が極めて高い処理（入力データによって出力データが一意に定まらない処理）を，スキップ可能な処理部であると判断するものであってもよい。また，事業者は，例えば，入力データ等を受信する受信部としても機能する処理部のように，他の機能の役割も担う処理部については，それぞれの機能を実現するプログラムの性質によらずスキップが可能でない処理部であると判断するものであってよい。
【００４８】
[第１の実施の形態の詳細]
次に，第１の実施の形態の詳細について説明する。図１２から図１４は，第１の実施の形態における実行管理処理の詳細を説明するフローチャート図である。また，図１５は，第１の実施の形態における実行管理処理におけるスキップ無効指示を説明する図である。図９から図１１及び図１５を参照しながら，図１２から図１４の実行管理処理の詳細を説明する。
【００４９】
［前の処理部から記憶していない処理結果を受信した場合の処理（１）］
初めに，スキップが可能ではない処理部が前に実行された処理部の処理結果を受信した場合の処理について説明を行う。具体的に，図９の例において，振分処理部１１１Ａが入力データ（情報格納領域１２０Ａに記憶されていない入力データ）を受信した場合について説明を行う。なお，以下，振分処理部１１１Ａがスキップ可能な処理部であり，契約突合せ処理部１１１Ｂと人感検出処理部１１１Ｃがスキップ可能ではない処理部であるものとし，これらの情報はスキップ可否情報１２３Ａに予め記憶されているものとする。
【００５０】
初めに，契約者等によって入力された入力データをデータ受信部１１２Ａが受信した場合（Ｓ１１のＹＥＳ，Ｓ１２のＮＯ，Ｓ１４のＮＯ，Ｓ１５のＮＯ），振分処理部１１１Ａは，例えば，入力データに基づいて自処理（第１の処理）を実行する（Ｓ１６）。次に，振分処理部１１１Ａは，例えば，情報格納領域１２０Ａの処理情報１２２Ａを確認し，新たな処理結果と一致する情報（過去の処理結果）が記憶されているか否かを確認する（Ｓ１７）。そして，新たな処理結果と一致する処理結果が記憶されていない場合（Ｓ１７のＹＥＳ），処理情報記憶部１１５Ａは，例えば，振分処理部１１１Ａからの指示に基づいて，情報格納領域１２０Ａにその新たな処理結果を処理情報１２２Ａとして記憶する（Ｓ２１）。さらに，データ送信部１１３Ａは，例えば，振分処理部１１１Ａからの指示に基づいて，振分処理部１１１Ａの処理結果を次（直後）の処理部に送信する（Ｓ２２）。なお，データ送信部１１３Ａは，例えば，処理接続情報１２４Ａを参照することにより，振分処理部１１１Ａの送信先を判断するものであってよい。
【００５１】
次に，振分処理部１１１Ａは，例えば，スキップ可否情報１２３Ａを参照し，自処理部がスキップ可能な処理部であるか否かを確認する（Ｓ２３）。図１０の例における振分処理部１１１Ａは，スキップ可能でない処理部であるため，データ受信部１１２Ａが次の入力データを受信するまで待機する。（Ｓ２３のＮＯ，Ｓ１１）。
【００５２】
［前の処理部から記憶していない処理結果を受信した場合の処理（２）］
次に，スキップが可能である処理部が前に実行された処理部の処理結果を受信した場合の処理について説明を行う。具体的に，図９の例において，契約突合せ処理部１１１Ｂが入力データ（振分処理部１１１Ａの処理結果）を受信した場合について説明を行う。
【００５３】
初めに，契約突合せ処理部１１１Ｂが入力データ（振分処理部１１１Ａの処理結果）を受信した場合（Ｓ１１のＹＥＳ，Ｓ１２のＮＯ，Ｓ１４のＮＯ，Ｓ１５のＮＯ），契約突合せ処理部１１１Ｂは，例えば，受信した入力データに基づいて自処理を実行する（Ｓ１６）。次に，契約突合せ処理部１１１Ｂは，例えば，情報格納領域１２０Ｂの処理情報１２２Ｂを確認し，新たな処理結果と一致する情報（過去の処理結果）が記憶されているか否かを確認する（Ｓ１７）。そして，新たな処理結果と一致する処理結果が記憶されていない場合（Ｓ１７のＹＥＳ），処理情報記憶部１１５Ｂは，例えば，契約突合せ処理部１１１５Ｂからの指示に基づいて，情報格納領域１２０Ｂにその新たな処理結果を記憶する（Ｓ２１）。さらに，データ送信部１１３Ｂは，例えば，契約突合せ処理部１１１５Ｂからの指示に基づいて，自処理の処理結果を次（直後）の処理部に送信する（Ｓ２２）。
【００５４】
次に，契約突合せ処理部１１１Ｂは，例えば，スキップ可否情報１２３Ｂを参照し，自処理部がスキップ可能な処理部であるか否かを確認する（Ｓ２３）。図９の契約突合せ処理部１１１Ｂは，スキップ可能な処理部であるため（Ｓ２３のＹＥＳ），契約突合せ処理部１１１Ｂは，例えば，後に実行される処理部から処理結果及び識別子を受信しているか否かの確認を行う（Ｓ２４）。具体的に，契約突合せ処理部１１１Ｂは，例えば，情報格納領域１２０Ｂの処理情報１２２Ｂを参照して確認する。そして，後に実行される処理部から処理結果と識別子を受信している場合（Ｓ２４のＹＥＳ），データ送信部１１３Ｂは，例えば，契約突合せ処理部１１１Ｂからの指示に基づいて，契約突合せ処理部１１１Ｂの処理結果と，次（直後）の処理部の処理結果と，受信した処理結果及び識別子とをスキップ判断情報として直前の処理部に送信する（Ｓ２５）。一方，後に実行される処理部から処理結果と識別子を受信していない場合（Ｓ２４のＮＯ），データ送信部１１３Ｂは，例えば，契約突合せ処理部１１１Ｂの処理結果と，次（直後）の処理部（人感検出処理部１１１Ｃ）の処理結果とをスキップ判断情報として直前の処理部に送信する（Ｓ２６）。なお，自処理部が処理連携システム１０における最初の処理部である場合には，前に実行された処理部にスキップ判断情報の送信を行わないものであってもよい。また，自処理部が処理連携システム１０における最後の処理部である場合には，後に実行される処理部に自処理の処理結果の送信を行わないものであってもよい。
【００５５】
すなわち，各処理部のデータ送信部は，自処理部がスキップ可能である場合に，スキップ判断情報を直前の処理部に送信する。
【００５６】
なお，データ送信部１１３Ｂは，例えば，契約突合せ処理部１１１Ｂが振分処理部１１１Ａから処理結果を受信した回数（以下，受信回数とも呼ぶ）を記憶する。そして，その受信回数が所定の閾値（例えば，１０回）を超えた場合に，データ送信部１１３Ｂは，契約突合せ処理部１１１Ｂのスキップ判断情報を振分処理部１１１Ａに送信するものであってもよい。
【００５７】
［後の処理部から処理結果を受信した場合の処理］
次に，後に実行された処理部の処理結果を受信した場合の処理について説明を行う。具体的に，図１０の例において，契約突合せ処理部１１１Ｂが人感検出処理部１１１Ｃからスキップ判断情報を受信した場合について説明を行う。なお，図１０の例の処理連携システム１０において，人感検出処理部１１１Ｃの後に処理連携システム１０の出力データをユーザに返す出力処理部（図示しない）が存在するものとする。そして，契約突合せ処理部１１１Ｂが人感検出処理部１１１Ｃから受信するスキップ判断情報は，例えば，人感検出処理部１１１Ｃの処理結果と，出力処理部を示す識別子からなるものとする。
【００５８】
初めに，契約突合せ処理部１１１Ｂが人感検出処理部１１１Ｃからスキップ判断情報を受信した場合（Ｓ１１のＹＥＳ，Ｓ１２のＹＥＳ），処理情報記憶部１１５Ｂは，受信したスキップ判断情報と，スキップ判断情報に関連する処理結果（情報格納領域１２０Ｂに記憶されている処理結果）とを関連付けて情報格納領域１２０Ｂに記憶する（Ｓ１３）。具体的に，図１０の例においては，人感検出処理部１１１Ｃへの入力データである契約突合せ処理部１１１Ｂの処理結果と，契約突合せ処理部１１１Ｂの処理結果に基づいて実行された人感検出処理部１１１Ｃにおける処理の処理結果と，人感検出処理部１１１Ｃの処理結果（処理連携システム１０の出力データ）の送信先である出力処理部を示す識別子とを関連付けて記憶する。
【００５９】
次に，契約突合せ処理部１１１Ｂは，自処理がスキップ可能な処理部であるか否かの確認を行う（Ｓ２７）。そして，契約突合せ処理部１１１Ｂがスキップ可能な処理部である場合（Ｓ２７のＹＥＳ），データ送信部１１３Ｂは，契約突合せ処理部１１１Ｂの処理結果と，次（直後）の処理部である人感検出処理部１１１Ｃを示す識別子と，受信した処理結果及び識別子とを直前の処理部に送信する（Ｓ２８）。これにより，スキップ可能な処理部が複数連続している場合に，これらの処理部が全てスキップされるために必要な情報を，一度の処理によって各処理部に記憶させることができる。
【００６０】
なお，データ送信部１１３Ｂは，例えば，図１３のＳ２５とＳ２８のいずれか一方においてのみ，契約突合せ処理部１１１Ｂの処理結果と，次（直後）の処理部である人感検出処理部１１１Ｃを示す識別子と，受信した処理結果及び識別子とを直前の処理部に送信するものであってもよい。これにより，同一のスキップ判断情報を前の処理部に送信することを防止することができる。また，データ送信部１１３Ｂからスキップ判断情報を受信するデータ受信部１１２Ａは，重複したスキップ判断情報を受信した場合に，受信したデータを破棄するものであってもよい。
【００６１】
［前の処理部から記憶している処理結果を受信した場合の処理］
次に，前に実行された処理部の処理結果を受信した場合であって，その処理結果が情報格納領域に記憶されていた場合の処理について説明を行う。具体的に，図１１の例において，振分処理部１１１Ａが入力データ（情報格納領域１２０Ａに記憶されている入力データ）を受信した場合について説明を行う。
【００６２】
初めに，契約者等によって入力された入力データを振分処理部１１１Ａが受信した場合（Ｓ１１のＹＥＳ，Ｓ１２のＮＯ，Ｓ１４のＮＯ，Ｓ１５のＮＯ），振分処理部１１１Ａは，例えば，入力データに基づいて自処理を実行する（Ｓ１６）。次に，振分処理部１１１Ａは，例えば，情報格納領域１２０Ａの処理情報１２２Ａを確認し，新たな処理結果と一致する情報（過去の処理結果）が記憶されているか否かを確認する（Ｓ１７）。そして，新たな処理結果と一致する処理結果が記憶されている場合（Ｓ１７のＮＯ），データ送信部１１３Ａは，例えば，振分処理部１１１Ａからの指示に基づいて，新たな処理結果と一致した処理結果と関連付けて記憶された契約突合せ処理部１１１Ｂの処理結果及び識別子を抽出する。さらに，データ送信部１１３Ａは，例えば，抽出した識別子によって識別される処理部（人感検出処理部１１１Ｃ）に，抽出した契約突合せ処理部１１１Ｂの処理結果を送信する（Ｓ１８）。具体的に，振分処理部１１１Ａは，図１０において契約突合せ処理部１１１Ｂの処理結果と，人感検出処理部１１１Ｃの識別子とを受信し，これらの情報と振分処理部１１１Ａの処理結果とを関連付けて情報格納領域１２０Ａに記憶している。そのため，振分処理部１１１Ａは，情報格納領域１２０Ａから契約突合せ処理部１１１Ｂの処理結果と，人感検出処理部１１１Ｃの識別子とを抽出し，人感検出処理部１１１Ｃに契約突合せ処理部１１１Ｂの処理結果を送信する。なお，新たな処理結果と一致した処理結果と関連付けて複数の異なる処理結果及び識別子が記憶されている場合は，記憶されている識別子によって識別した処理部のうち最後に実行される処理に，抽出した処理結果のうち最後の処理部において実行された処理結果を送信する。
【００６３】
また，データ送信部１１３Ａは，例えばＳ１８の後，スキップした処理部にその処理部がスキップされた旨を通知するものであってよい（Ｓ１９）。この場合，送信回数記憶部１１４Ａは，後の処理がスキップされた回数を処理部毎に記憶する。そして，データ送信部１１３Ａは，その回数が所定の閾値（例えば，１０回）を超えた場合に，その回数を送信するものであってもよい。
【００６４】
［突合せ情報更新指示を受信した場合の処理］
次に，処理部が突合せ情報の更新指示を受信した場合の処理について説明を行う。具体的に，図１１の例において，契約突合せ処理部１１１Ｂが契約情報１２１Ａの更新指示を受信した場合について説明を行う。
【００６５】
初めに，契約突合せ処理部１１１Ｂが前に実行された処理部（例えば，振分処理部１１１Ａ以外の処理部）から突合せ情報更新指示を受信した場合（Ｓ１１のＹＥＳ，Ｓ１２のＮＯ，Ｓ１４のＹＥＳ），突合せ情報記憶部１１６Ｂは，突合せ情報更新指示に基づいて突合せ情報１２１Ａ（図１１の例においては契約情報１２１Ａ）の更新を行う（Ｓ３１）。この突合せ情報更新指示は，例えば，契約者ＩＤが「１２３」である契約者が，センサＩＤが「１２」である人感センサによる監視を行う契約を解除した場合，図８（Ａ）に示す契約情報１２１Ａの更新（消去）を行うためのものである。
【００６６】
ここで，突合せ情報更新指示を受信したことに伴う契約情報１２１Ａの更新により，入力データに対する契約突合せ処理部１１１Ｂの出力データが変わる場合がある。具体的に，契約情報１２１Ａが図８に示す状態にある場合，図７に示すように，契約者ＩＤが「１２３」であり，センサＩＤが「１２」であり，在宅情報が「不在」である入力データを受信したときに，契約突合せ処理部１１１Ｂは，契約者ＩＤが「１２３」であり，在宅情報が「不在」である出力データを人感検出処理部１１１Ｃに送信する。これに対し，突合せ情報更新指示による契約情報１２１Ａの更新後は，契約情報１２１Ａに契約者ＩＤが「１２３」である契約者の人感センサに関する情報が記憶されていない。そのため，契約突合せ処理部１１１Ｂは，上記の入力データを受信した場合にエラーを返すことになる。
【００６７】
すなわち，スキップは入力データによって出力データが一意に定まることを前提に行われるため，契約情報１２１Ａの変更（更新）が発生した場合，図１５に示すように，引き続き契約突合せ処理部１１１Ｂのスキップを行うことはデータの整合性確保の観点から妥当ではない。そのため，契約突合せ処理部１１１Ｂは，新たな契約突合せ処理部１１１Ｂの処理結果が以前の処理結果と異なる可能性がある場合に，各処理情報における契約突合せ処理部１１１Ｂに関する情報を削除するように，前の処理部に通知する必要がある。
【００６８】
図１４に戻り，データ送信部１１３Ｂは，直前の処理部（図１１の例においては振分処理部１１１Ａ）にスキップに関する情報を消去する指示（以下，スキップ無効指示とも呼ぶ）を送信する（Ｓ３２）。
【００６９】
その後，契約突合せ処理部１１１Ｂからスキップ無効指示を受信した振分処理部１１１Ａは，受信したスキップ無効指示に含まれる処理結果の情報が記憶されているか否かの確認を行う（Ｓ４１）。そして，スキップ無効指示に含まれる処理結果の情報が記憶されていた場合（Ｓ４１のＹＥＳ），振分処理部１１１Ａの処理情報消去部１１７Ａは，スキップ無効指示に含まれる処理結果の情報を消去する（Ｓ４２）。次に，データ送信部１１３Ａは，直前の処理部に契約突合せ処理部１１１Ｂから受信したスキップ無効指示を送信する（Ｓ４３）。すなわち，契約情報１２１Ａの変更（更新）があった場合において，変更に影響がある処理部のスキップに関する情報を消去する。これにより，処理連携システム１０の処理全体の整合性を確保することが可能になる。また，契約突合せ処理部１１１Ｂのスキップに関する情報を消去した後，処理連携システム１０の各処理部は，契約突合せ処理部１１１Ｂの入力データと新たな出力データとの組合せに基づいて，契約突合せ処理部１１１Ｂをスキップするための情報の記憶を新たに行うことが可能になる。
【００７０】
［第１の実施の形態における実行管理処理の具体例］
次に，第１の実施の形態における実行管理処理の具体例について説明する。図１６から図１８は，第１の実施の形態における実行管理処理の具体例を説明するシーケンスチャート図である。また，図１９は，第１の実施の形態における実行管理処理の具体例を説明する図である。図１２から図１４及び図１９を参照しながら図１６から図１８の実行管理処理の具体例を説明する。
【００７１】
［図１９の処理連携システム１０の構成］
初めに，図１９の例における処理連携システム１０の構成について説明する。図１９における処理連携システム１０は，図７の処理連携システム１０とは異なり，人感検出処理部１１１Ｃの後に稼動確認処理部１１１Ｄが存在する。なお，稼動確認処理部１１１Ｄの後続処理については記載を省略する。
【００７２】
図１９の例において，稼動確認処理部１１１Ｄは，例えば，人感検出処理部１１１Ｃにおける処理結果及び稼動履歴情報１２１Ｃの内容に基づいて処理を行い，その処理結果を処理すべき後続処理に送信する。また，稼動履歴情報１２１Ｃは，例えば，稼動確認処理部１１１Ｄが人感検出処理部１１１Ｃから処理結果を受信した時刻の履歴情報を記憶しているものである。具体的に，稼動確認処理部１１１Ｄは，例えば，人感検出処理部１１１Ｃを行うセンサ（図示しない）が正常性を判断するものである。稼動確認処理部１１１Ｄは，例えば，人感検出処理部１１１Ｃから新たな処理結果を受信した時刻と前回処理結果を受信した時刻との差が一定時間以内である場合に，人感検出処理部１１１Ｃを行うセンサ（図示しない）が正常であると判断するものであってよい。なお，図１９の例において，振分処理部１１１Ａ及び稼動確認処理部１１１Ｄは，スキップが可能でない処理部であり，契約突合せ処理部１１１Ｂ及び人感検出処理部１１１Ｃは，スキップが可能である処理部であるとする。
【００７３】
［図１６の具体例］
図１６は，処理連携システム１０に入力データ（以下，Ｅｖ０とも呼ぶ）が入力された場合（図１６の（１））の図である。図１６の例において，振分処理部１１１Ａ（以下，Ｑ１とも呼ぶ）は，Ｅｖ０に基づいて処理を行い，その処理結果（以下，Ｅｖ１とも呼ぶ）を処理情報１２２Ａに記憶する（Ｓ１６，Ｓ２１）。そして，振分処理部１１１Ａは，処理情報１２２Ａに自処理の処理結果である出力データが記憶されていない場合（Ｓ１７のＹＥＳ），Ｅｖ１を契約突合せ処理部１１１Ｂ（以下，Ｑ２とも呼ぶ）に送信する（Ｓ２２，図１６の（２））。同様に，契約突合せ処理部１１１Ｂは，Ｅｖ１に基づいて処理を行い，その処理結果（以下，Ｅｖ２とも呼ぶ）を処理情報１２２Ｂに記憶する（Ｓ１６，Ｓ２１）。そして，契約突合せ処理部１１１Ｂは，自処理の処理結果である出力データを人感検出処理部１１１Ｃ（以下，Ｑ３とも呼ぶ）に送信する（Ｓ２２，図１６の（３））。同様に，人感検出処理部１１１Ｃは，Ｅｖ２に基づいて処理を行い，その処理結果（以下，Ｅｖ３とも呼ぶ）を処理情報１２２Ｃに記憶する（Ｓ１６，Ｓ２１）。そして，人感検出処理部１１１Ｃは，自処理の処理結果である出力データを稼動確認処理部１１１Ｄ（以下，Ｑ４とも呼ぶ）に送信する（Ｓ２２，図１６の（４））。同様に，稼動確認処理部１１１Ｄは，Ｅｖ３に基づいて処理を行い，その処理結果（以下，Ｅｖ４１とも呼ぶ）を処理情報１２２Ｄに記憶する（Ｓ１６，Ｓ２１）。そして，稼動確認処理部１１１Ｄは，自処理の処理結果である出力データを後続処理に送信する（Ｓ２２，図１６の（５））。
【００７４】
なお，図１６の例においては，振分処理部１１１Ａ及び稼動確認処理部１１１Ｄの処理結果がそれぞれＥｖ１，Ｅｖ４１である場合について説明したが，これらの処理はスキップ可能でないため，それぞれＥｖ１，Ｅｖ４１以外の処理結果が出力される可能性がある。そして，振分処理部１１１Ａの処理結果がＥｖ１以外である場合，例えば，データ送信部１１３Ａは，契約突合せ処理部１１１Ｂ以外に処理結果を送信するものであってよい。
【００７５】
また，契約突合せ処理部１１１Ｂは，Ｅｖ２を人感検出処理部１１１Ｃに送信する際に，Ｅｖ２及びＱ３の情報（スキップ判断情報）を振分処理部１１１Ａに送信する（Ｓ２６，図１６の（６））。そして，データ受信部１１２ＡがＥｖ２及びＱ３の情報を受信したときに，処理情報記憶部１１５Ａは，受信したＥｖ２及びＱ３の情報を振分処理部１１１Ａの処理結果であるＥｖ１に関連付けて情報格納領域１２０Ａに記憶する（Ｓ１３，Ｓ２７のＮＯ）。
【００７６】
また，人感検出処理部１１１Ｃは，Ｅｖ３を稼動確認処理部１１１Ｄに送信する際に，Ｅｖ３及びＱ４の情報を契約突合せ処理部１１１Ｂに送信する（Ｓ２６，図１６の（７））。そして，データ受信部１１２ＢがＥｖ３及びＱ４の情報を受信したときに，処理情報記憶部１１５Ｂは，受信したＥｖ３及びＱ４の情報を契約突合せ処理部１１１Ｂの処理結果であるＥｖ２に関連付けて情報格納領域１２０Ｂに記憶する（Ｓ１３）。さらに，人感検出処理部１１１ＣからＥｖ３とＱ４の情報を受信した契約突合せ処理部１１１Ｂは，スキップ可能な処理部であるため，情報を受信したことに応答して，受信したＥｖ３及びＱ４とＥｖ２及びＱ３との情報を振分処理部１１１Ａに送信するものであってよい（Ｓ２７のＹＥＳ，Ｓ２８，図１６の（８））。そして，データ受信部１１２ＡがＥｖ３及びＱ４とＥｖ２及びＱ３との情報を受信したときに，処理情報記憶部１１５Ａは，受信したＥｖ３及びＱ４とＥｖ２及びＱ３との情報を振分処理部１１１Ａの処理結果であるＥｖ１に関連付けて情報格納領域１２０Ａに記憶する（Ｓ１３，Ｓ２７のＮＯ）。
【００７７】
［図１７の具体例］
図１７は，処理連携システム１０にＥｖ０が再度入力（図１７の（１））された場合の図である。図１７の例において，振分処理部１１１Ａは，Ｅｖ０に基づいて処理を行う（Ｓ１６）。そして，その処理結果と一致する過去の処理結果が情報格納領域１２０Ａに記憶されているため（Ｓ１７のＮＯ），振分処理部１１１Ａは，一致した過去の処理結果に関連する情報を処理情報１２２Ａから抽出する（Ｓ１８）。具体的に，図１７の例における振分処理部１１１Ａは，図１６においてＥｖ２，Ｑ３，Ｅｖ３，Ｑ４の情報を受信し，契約突合せ処理部１１１Ｂの入力データであり振分処理部１１１Ａの出力データであるＥｖ１の情報と関連付けて処理情報１２２Ａに記憶している（Ｓ１３）。そのため，具体的に，振分処理部１１１Ａは，抽出した識別子によって識別した処理部（Ｑ３，Ｑ４）のうち最後に実行された処理部（Ｑ４）に，抽出した処理結果（Ｅｖ２，Ｅｖ３）のうち最後の処理部において実行された処理結果（Ｅｖ３）を送信する（Ｓ１８，図１７の（２））。すなわち，図１７の例において，振分処理部１１１Ａは，契約突合せ処理部１１１Ｂ及び人感検出処理部１１１Ｃをスキップし，稼動確認処理部１１１ＤにＥｖ３を送信する。さらに，稼動確認処理部１１１Ｄは，Ｅｖ３に基づいて処理を行い，その処理結果（以下，Ｅｖ４２とも呼ぶ）を処理情報１２２Ｄに記憶する（Ｓ１６，Ｓ２１）。そして，稼動確認処理部１１１Ｄは，自処理の処理結果である出力データを後続処理に送信する（Ｓ２２，図１７の（３））。
【００７８】
また，Ｓ１８の後，振分処理部１１１Ａは，スキップした契約突合せ処理部１１１Ｂ及び人感検出処理部１１１Ｃに，スキップした旨（またはスキップした回数）を送信するものであってよい（Ｓ１９，図１７の（４）（５））。
【００７９】
［図１８の具体例］
図１８は，人感検出処理部１１１Ｃに突合せ情報更新指示（Ｅｖ１０）が送信された場合（図１８の（１））の図である。図１８の例において，突合せ情報更新指示を受信した人感検出処理部１１１Ｃは，スキップ無効指示を直前の処理部である契約突合せ処理部１１１Ｂに送信する（Ｓ３２，図１８の（２））。そして，スキップ無効指示を受信した契約突合せ処理部１１１Ｂは，処理情報１２２Ｂに契約突合せ処理部１１１Ｂの処理結果が記憶されている（Ｓ４１のＹＥＳ），そのため，処理情報消去部１１７Ｂは，スキップ無効指示に含まれる契約突合せ処理部１１１Ｂの処理結果と関連付けて記憶された情報を消去する（Ｓ４２）。さらに，契約突合せ処理部１１１Ｂは，スキップ無効指示を直前の処理部である振分処理部１１１Ａに送信する（Ｓ４３，図１８の（３））。そして，スキップ無効指示を受信した振分処理部１１１Ａは，処理情報１２２Ａに振分処理部１１１Ａの処理結果が記憶されている（Ｓ４１のＹＥＳ）。そのため，処理情報消去部１１７Ａは，スキップ無効指示に含まれる振分処理部１１１Ａの処理結果と関連付けて記憶された情報を消去する（Ｓ４２）。
【００８０】
[第２の実施の形態]
次に，第２の実施の形態について説明する。図２０及び図２１は，第２の実施の形態における実行管理処理を説明するフローチャート図である。また，図２２から図２４は，第２の実施の形態における実行管理処理を説明する図である。図１２から図１４及び図２２から図２４を参照しながら，図２０及び図２１の実行管理処理の詳細を説明する。
【００８１】
［図２２の処理連携システム１０の構成］
初めに，図２２の例における処理連携システム１０の構成について説明する。図２２における処理連携システム１０は，図１９の処理連携システム１０とは異なり，契約突合せ処理部１１１Ｂの後続処理として，人感検出処理部１１１Ｃ及びメール送信突合せ処理部１１１Ｅが存在する。また，図２２の例において，メール送信突合せ処理部１１１Ｅの後に，在宅時間計測処理部１１１Ｆが存在する。なお，稼動確認処理部１１１Ｄ及び在宅時間計測処理部１１１Ｆの後続処理については記載を省略する。
【００８２】
図２２の例において，契約突合せ処理部１１１Ｂは，例えば，入力データのセンサＩＤとして「人感センサ」を示す「１２」の情報が含まれている場合，自処理の処理結果を人感検出処理部１１１Ｃとメール送信突合せ処理部１１１Ｅに送信するものとする。
【００８３】
また，図２２の例において，メール送信突合せ処理部１１１Ｅは，例えば，契約突合せ処理部１１１Ｂにおける処理結果及びメール送信先情報（図示しない）の内容に基づいて，メールを送信すべき契約者のメールアドレスを抽出する処理を行い，その処理結果を処理すべき後続処理に送信する。メール送信先情報は，例えば，図２３に示すように，契約者にメール連絡をする必要が発生したときに使用する契約者毎のメールアドレスの情報を記憶している。具体的に，図２３のメール送信先情報において，契約者ＩＤが「１２３」である契約者は，メールアドレスとして「ＡＡＡ＠ＢＢＢ」と記憶している。また，契約者ＩＤが「１２４」である契約者は，メールアドレスとして「ＤＤＤ＠ＢＢＢ」及び「ＥＥＥ＠ＢＢＢ」と記憶している。また，契約者ＩＤが「１２５」である契約者は，メールアドレスとして「ＧＧＧ＠ＦＦＦ」と記憶している。
【００８４】
さらに，図２２の例において，在宅時間計測処理部１１１Ｆは，例えば，メール送信突合せ処理部１１１Ｅにおける処理結果及び在宅時間情報（図示しない）の内容に基づいて，契約者の在宅時間を計測する処理を行い，その処理結果を処理すべき後続処理に送信する。具体的に，図２２の例におけるメール送信突合せ処理部１１１Ｅ及び在宅時間計測処理部１１１Ｆは，例えば，契約者が高齢者である場合に，定期的に契約者の在宅時間を計測するためのものである。そして，処理連携システム１０は，例えば，在宅時間が所定の閾値（例えば，２４時間）を超えた場合に，メール送信突合せ処理部１１１Ｅにおいて抽出したメールアドレス（契約者の親戚のメールアドレス等）に向けて，契約者の状況を知らせるメールを送信するものであってよい。
【００８５】
［第２の実施の形態における実行管理処理の具体例（１）］
次に，第２の実施の形態における実行管理処理の具体例について説明する。図２０及び図２１は，第２の実施の形態における実行管理処理の具体例を説明するシーケンスチャート図である。図２２を参照しながら図２０及び図２１の実行管理処理の具体例を説明する。
【００８６】
［図２０の具体例］
図２０は，処理連携システム１０に入力データ（以下，Ｅｖ０とも呼ぶ）が入力された場合（図２０の（１））の図である。図２０の例において，振分処理部１１１Ａ（以下，Ｑ１とも呼ぶ）は，図１６の例と同様に，Ｅｖ０に基づいて処理を行い，その処理結果（以下，Ｅｖ１とも呼ぶ）を処理情報１２２Ａに記憶する（Ｓ１６，Ｓ２１）。そして，振分処理部１１１Ａは，処理情報１２２Ａに自処理の処理結果である出力データが記憶されていない場合（Ｓ１７のＹＥＳ），Ｅｖ１を契約突合せ処理部１１１Ｂ（以下，Ｑ２とも呼ぶ）に送信する（Ｓ２２，図２０の（２））。同様に，契約突合せ処理部１１１Ｂは，Ｅｖ１に基づいて処理を行い，その処理結果（以下，Ｅｖ２とも呼ぶ）を処理情報１２２Ｂに記憶する（Ｓ１６，Ｓ２１）。そして，契約突合せ処理部１１１Ｂは，自処理の処理結果である出力データを人感検出処理部１１１Ｃ（以下，Ｑ３とも呼ぶ）に送信する（Ｓ２２，図２０の（３））。同様に，人感検出処理部１１１Ｃは，Ｅｖ２に基づいて処理を行い，その処理結果（以下，Ｅｖ３とも呼ぶ）を処理情報１２２Ｃに記憶する（Ｓ１６，Ｓ２１）。そして，人感検出処理部１１１Ｃは，自処理の処理結果である出力データを稼動確認処理部１１１Ｄ（以下，Ｑ４とも呼ぶ）に送信する（Ｓ２２，図２０の（４））。同様に，稼動確認処理部１１１Ｄは，Ｅｖ３に基づいて処理を行い，その処理結果（以下，Ｅｖ４３とも呼ぶ）を処理情報１２２Ｄに記憶する（Ｓ１６，Ｓ２１）。そして，稼動確認処理部１１１Ｄは，自処理の処理結果である出力データを後続処理に送信する（Ｓ２２，図２０の（５））。
【００８７】
また，契約突合せ処理部１１１Ｂは，Ｅｖ２を人感検出処理部１１１Ｃに送信する際に，Ｅｖ２及びＱ３の情報を振分処理部１１１Ａに送信する（Ｓ２６，図２０の（６））。そして，データ受信部１１２ＡがＥｖ２及びＱ３の情報を受信したときに，処理情報記憶部１１５Ａは，受信したＥｖ２及びＱ３の情報を振分処理部１１１Ａの処理結果であるＥｖ１に関連付けて情報格納領域１２０Ａに記憶する（Ｓ１３，Ｓ２７のＮＯ）。
【００８８】
さらに，人感検出処理部１１１Ｃは，Ｅｖ３を稼動確認処理部１１１Ｄに送信する際に，Ｅｖ３及びＱ４の情報を契約突合せ処理部１１１Ｂに送信する（Ｓ２６，図２０の（７））。そして，データ受信部１１２ＢがＥｖ３及びＱ４の情報を受信したときに，処理情報記憶部１１５Ｂは，受信したＥｖ３及びＱ４の情報を契約突合せ処理部１１１Ｂの処理結果であるＥｖ２に関連付けて情報格納領域１２０Ｂに記憶する（Ｓ１３）。さらに，人感検出処理部１１１ＣからＥｖ３とＱ４の情報を受信した契約突合せ処理部１１１Ｂは，スキップ可能な処理部であるため，情報を受信したことに応答して，受信したＥｖ３及びＱ４とＥｖ２及びＱ３との情報を振分処理部１１１Ａに送信するものであってよい（Ｓ２７のＹＥＳ，Ｓ２８，図２０の（８））。そして，データ受信部１１２ＡがＥｖ３及びＱ４とＥｖ２及びＱ３との情報を受信したときに，処理情報記憶部１１５Ａは，受信したＥｖ３及びＱ４とＥｖ２及びＱ３との情報を振分処理部１１１Ａの処理結果であるＥｖ１に関連付けて情報格納領域１２０Ａに記憶する（Ｓ１３，Ｓ２７のＮＯ）。
【００８９】
一方，Ｅｖ１に基づいて処理を行った契約突合せ処理部１１１Ｂは，Ｅｖ１に基づく処理結果であるＥｖ２をメール送信突合せ部１１１Ｅ（以下，Ｑ５とも呼ぶ）にも送信する（Ｓ２２，図２０の（９））。そして，メール送信突合せ部１１１Ｅは，Ｅｖ２に基づいて処理を行い，その処理結果（以下，Ｅｖ５とも呼ぶ）を処理情報１２２Ｅに記憶する（Ｓ１６，Ｓ２１）。さらに，メール送信突合せ部１１１Ｅは，自処理の処理結果である出力データを在宅時間計測処理部１１１Ｆに送信する（Ｓ２２，図２０の（１０））。同様に，在宅時間計測処理部１１１Ｆは，Ｅｖ５に基づいて処理を行い，その処理結果（以下，Ｅｖ６１とも呼ぶ）を処理情報１２２Ｆに記憶する（Ｓ１６，Ｓ２１）。そして，在宅時間計測処理部１１１Ｆは，自処理の処理結果である出力データを後続処理に送信する（Ｓ２２，図２０の（１１））。なお，契約突合せ処理部１１１Ｂは，例えば，処理接続情報１２４Ａを参照することにより，処理結果がＥｖ２であるときの送信先が人感検出処理部１１１Ｃ及びメール送信突合せ部１１１Ｅであると判断するものであってよい。
【００９０】
また，契約突合せ処理部１１１Ｂは，Ｅｖ２をメール送信突合せ処理部１１１Ｅに送信する際に，Ｅｖ２及びＱ５の情報を振分処理部１１１Ａに送信する（Ｓ２６，図２０の（１２））。そして，データ受信部１１２ＡがＥｖ２及びＱ５の情報を受信したときに，処理情報記憶部１１５Ａは，受信したＥｖ２及びＱ５の情報を振分処理部１１１Ａの処理結果であるＥｖ１に関連付けて情報格納領域１２０Ａに記憶する（Ｓ１３，Ｓ２７のＮＯ）。
【００９１】
さらに，メール送信突合せ処理部１１１Ｅは，Ｅｖ５を在宅時間計測処理部１１１Ｆに送信する際に，Ｅｖ５及びＱ６の情報を契約突合せ処理部１１１Ｂに送信する（Ｓ２６，図２０の（１３））。そして，データ受信部１１２ＢがＥｖ５及びＱ６の情報を受信したときに，処理情報記憶部１１５Ｂは，受信したＥｖ５及びＱ６の情報を契約突合せ処理部１１１Ｂの処理結果であるＥｖ２に関連付けて情報格納領域１２０Ｂに記憶する（Ｓ１３）。さらに，メール送信突合せ処理部１１１ＥからＥｖ５とＱ６の情報を受信した契約突合せ処理部１１１Ｂは，スキップ可能な処理部であるため，情報を受信したことに応答して，受信したＥｖ５及びＱ６とＥｖ２及びＱ５との情報を振分処理部１１１Ａに送信するものであってよい（Ｓ２７のＹＥＳ，Ｓ２８，図２０の（１４））。そして，データ受信部１１２ＡがＥｖ５及びＱ６とＥｖ２及びＱ５との情報を受信したときに，処理情報記憶部１１５Ａは，受信したＥｖ５及びＱ６とＥｖ２及びＱ５との情報を振分処理部１１１Ａの処理結果であるＥｖ１に関連付けて情報格納領域１２０Ａに記憶する（Ｓ１３，Ｓ２７のＮＯ）。
【００９２】
［図２１の具体例］
図２１は，処理連携システム１０にＥｖ０が再度入力された場合（図２１の（１））の図である。図２１の例において，振分処理部１１１Ａは，Ｅｖ０に基づいて処理を行う（Ｓ１６）。そして，その処理結果と一致する過去の処理結果が情報格納領域１２０Ａに記憶されているため（Ｓ１７のＮＯ），振分処理部１１１Ａは，一致した過去の処理結果に関連する情報を処理情報１２２Ａから抽出する（Ｓ１８）。具体的に，図１７の例における振分処理部１１１Ａは，図１６においてＥｖ２，Ｑ３，Ｅｖ３，Ｑ４の情報（以下，情報Ａとも呼ぶ）と，Ｅｖ２，Ｑ５，Ｅｖ５，Ｑ６の情報（以下，情報Ｂとも呼ぶ）を受信し，契約突合せ処理部１１１Ｂの入力データであり振分処理部１１１Ａの出力データであるＥｖ１の情報とそれぞれ関連付けて処理情報１２２Ａに記憶している（Ｓ１３）。そのため，振分処理部１１１Ａは，情報Ａから抽出した識別子によって識別した処理部（Ｑ３，Ｑ４）のうち最後に実行された処理部（Ｑ４）に，情報Ａから抽出した処理結果（Ｅｖ２，Ｅｖ３）のうち最後の処理部において実行された処理結果（Ｅｖ３）を送信する（図２１の（２））。すなわち，図２１の例において，振分処理部１１１Ａは，契約突合せ処理部１１１Ｂ及び人感検出処理部１１１Ｃをスキップし，稼動確認処理部１１１ＤにＥｖ３を送信する。次に，稼動確認処理部１１１Ｄは，Ｅｖ３に基づいて処理を行い，その処理結果（以下，Ｅｖ４４とも呼ぶ）を処理情報１２２Ｄに記憶する（Ｓ１６，Ｓ２１）。そして，稼動確認処理部１１１Ｄは，自処理の処理結果である出力データを後続処理に送信する（Ｓ２２，図２１の（３））。
【００９３】
また，振分処理部１１１Ａは，情報Ｂから抽出した識別子によって識別した処理部（Ｑ５，Ｑ６）のうち最後に実行された処理部（Ｑ６）に，情報Ｂから抽出した処理結果（Ｅｖ２，Ｅｖ５）のうち最後の処理部において実行された処理結果（Ｅｖ５）を送信する（図２１の（４））。すなわち，図２１の例において，振分処理部１１１Ａは，契約突合せ処理部１１１Ｂ及びメール送信突合せ処理部１１１Ｅをスキップし，在宅時間計測処理部１１１ＦにＥｖ５を送信する。次に，在宅時間計測処理部１１１Ｆは，Ｅｖ５に基づいて処理を行い，その処理結果（以下，Ｅｖ６２とも呼ぶ）を処理情報１２２Ｆに記憶する（Ｓ１６，Ｓ２１）。そして，在宅時間計測処理部１１１Ｆは，自処理の処理結果である出力データを後続処理に送信する（Ｓ２２，図２１の（５））。
【００９４】
さらに，Ｓ１８の後，振分処理部１１１Ａは，スキップした契約突合せ処理部１１１Ｂ，人感検出処理部１１１Ｃ及びメール送信突合せ処理部１１１Ｅに対し，スキップした旨（またはスキップした回数）を送信するものであってよい（Ｓ１９，図２１の（６）（７）（８））。
【００９５】
［処理情報の記憶内容の遷移］
次に，処理情報に記憶された情報の内容の遷移について説明する。図２４から図２６は，図２０の状態における処理情報に記憶された情報の内容の遷移を説明する図である。なお，図２４から図２６の例において，各処理情報は，処理部の処理結果（Ｅｖ１やＥｖ２等）毎に処理情報を管理している。
【００９６】
図２４は，図２０の例において，振分処理部１１１Ａが自処理の処理結果であるＥｖ１を契約突合せ処理部１１１Ｂに送信した場合の図である。具体的に，図２４の例においては，処理情報１２２Ａには，Ｅｖ１と，Ｅｖ１を送信した処理部であるＱ２の情報とが関連付けて記憶されている。
【００９７】
図２５は，図２０の例において，契約突合せ処理部１１１ＢがＥｖ２を人感検出処理部１１１Ｃ及びメール送信突合せ処理部１１１Ｅに送信し，人感検出処理部１１１Ｃ及びメール送信突合せ処理部１１１Ｅからそれぞれスキップ判断情報を受信した場合の図である。具体的に，図２５において，処理情報１２２Ｂには，Ｅｖ２と，Ｅｖ２を送信した処理部であるＱ３及びＱ５の情報とが関連付けて記憶されている。そして，処理情報１２２Ａには，契約突合せ処理部１１１Ｂから受信したスキップ判断情報が記憶されている。具体的に，処理情報１２２Ａには，Ｅｖ１と，Ｑ２と，ＥＶ２と，Ｑ３とが関連付けて記憶されている。また，処理情報１２２Ａには，Ｅｖ１と，Ｑ２と，Ｅｖ２と，Ｑ５とが関連付けて記憶されている。なお，図２５の処理情報１２２ＡのＱ２において，上に記載されたＥｖ２はＱ３と関連付けられた情報であり，下に記載されたＥｖ２はＱ５と関連付けられた情報であるものとする。
【００９８】
図２６は，図２０の例において，人感検出処理部１１１ＣがＥｖ３を稼動確認処理部１１１Ｄに送信し，稼動確認処理部１１１Ｄからスキップ判断情報を受信した場合の図である。そして，図２０の例において，メール送信突合せ処理部１１１ＥがＥｖ５を在宅時間計測処理部１１１Ｆに送信し，在宅時間計測処理部１１１Ｆからスキップ判断情報を受信した場合の図である。具体的に，図２６においては，処理情報１２２Ｃには，Ｅｖ３と，Ｅｖ３を送信した処理部であるＱ４とが関連付けて記憶されている。また，処理情報１２２Ｅには，Ｅｖ５と，Ｅｖ５を送信した処理部であるＱ６とが関連付けて記憶されている。そして，処理情報１２２Ｂには，人感検出処理部１１１Ｃ及びメール送信突合せ処理部１１１Ｅから受信したスキップ判断情報が記憶されている。具体的に，Ｅｖ２と，Ｑ３と，Ｅｖ３と，Ｑ４とが関連付けて記憶されている。また，Ｅｖ２と，Ｑ５と，Ｅｖ５と，Ｑ６とが関連付けて記憶されている。さらに，処理情報１２２Ａには，契約突合せ処理部１１１Ｂから受信したスキップ判断情報が記憶されている。具体的に，Ｅｖ１と，Ｑ２と，Ｅｖ２と，Ｑ３と，Ｅｖ３と，Ｑ４とが関連付けて記憶されている。また，Ｅｖ１と，Ｑ２と，Ｅｖ２と，Ｑ５と，Ｅｖ５と，Ｑ６とが関連付けて記憶されている。
【００９９】
すなわち，図２４から図２６の例における各処理部は，それぞれの処理情報を木構造にして記憶している。したがって，各処理部は，処理情報における木構造の先端部分を抽出することにより，送信すべき処理結果とその処理結果を送信すべき処理部とを容易に特定することが可能になる。具体的に，図２６の例において，処理情報１２２Ａの木構造における最も先端に位置している処理部はＱ４及びＱ６であり，Ｑ４及びＱ６のそれぞれに最も近い位置の処理結果はそれぞれＥｖ３及びＥｖ５である。そのため，振分処理部１１１Ａは，Ｑ６にＥｖ５を送信し，Ｑ４にＥｖ３を送信すべきことを容易に特定できる。
【０１００】
このように，第２の実施の形態においては，各処理部は，複数の後続処理が存在する場合であっても処理情報を木構造にして記憶することにより，処理結果を送信すべき処理部と，その処理部に送信すべき処理結果を容易に特定することができる。
【０１０１】
［複数存在する後続処理の一部からのみスキップ判断情報を受信している場合の処理］
図２７は，第２の実施の形態における実行管理処理の具体例を説明するシーケンスチャート図である。また，図２８は，第２の実施の形態における処理情報を説明する図である。なお，図２７において，スキップ判断情報の送信についての記載は省略する。
【０１０２】
図２７の例において，入力データ（Ｅｖ０）に基づいて処理を行った振分処理部１１１Ａは，契約突合せ処理部１１１Ｂ及び人感検出処理部１１１Ｃをスキップして，稼動確認処理部１１１Ｄに向けて処理結果（Ｅｖ１）を送信する（図２７の（１）（２））。一方，図２７の例において，振分処理部１１１Ａは，契約突合せ処理部１１１Ｂ及びメール送信突合せ処理部１１１Ｅを経由して（処理部のスキップをせずに），在宅時間計測処理部１１１Ｆに向けて処理結果を送信する（図２７の（３）（４）（５））。
【０１０３】
すなわち，図２７の例において，二つの後続処理を有する契約突合せ処理部１１１Ｂは，一方の後続処理であるメール送信突合せ処理部１１１Ｅに，自処理部の処理結果を送信している（図２７の（４））。これに対し，他方の後続処理である人感検出処理部１１１Ｃに対しては，振分処理部１１１Ａが直接稼動確認処理部１１１Ｄに向けて処理結果を送信している（図２７の（２））。そのため，図２７の例において，契約突合せ処理部１１１Ｂは，人感検出処理部１１１Ｃに向けて自処理の処理結果を送信する必要がない。
【０１０４】
しかし，図２７に示すように，振分処理部１１１Ａから処理結果を受信した契約突合せ処理部１１１Ｂは，処理接続情報１２４Ｂを参照して，人感検出処理部１１１Ｃ及びメール送信突合せ処理部１１１Ｅに処理結果を送信する（図２７の（４）（６））。そのため，図２７の例において，稼動確認処理部１１１Ｄは，振分処理部１１１Ａ及び人感検出処理部１１１Ｃの両方から同じ処理結果を受信する可能性がある（図２７の（２）（７））。この場合，処理連携システム１０は，データの整合性を確保できず，ユーザのサービスに影響を与えてしまう場合が考えられる。
【０１０５】
そこで，第２の実施の形態において，複数の後続処理を有する処理部は，例えば，全ての後続処理から処理結果を受信するまで，前の処理部にスキップ判断情報を送信しないものであってよい（図１３のＳ２５，Ｓ２６，Ｓ２８）。具体的に，図２７の例において，契約突合せ処理部１１１Ｂは，人感検出処理部１１１Ｃ及びメール送信突合せ処理部１１１Ｅの両方からスキップ判断情報を受信するまで待機する。そして，契約突合せ処理部１１１Ｂは，人感検出処理部１１１Ｃ及びメール送信突合せ処理部１１１Ｅの両方からのスキップ判断情報を受信したときに，受信した情報を含めたスキップ判断情報を，振分処理部１１１Ａに送信する。これにより，図２７の例において，契約突合せ処理部１１１Ｂは，一方の後続処理については自処理部がスキップされており，他方の後続処理については自処理部から処理結果を送信しているという状態の発生を防止することができる。そのため，同じ処理結果を複数回受信する処理部の発生を防止することができる。
【０１０６】
一方，図２８は，図２７の場合における処理情報の例である。図２７において，振分処理部１１１Ａから稼動確認処理部１１１Ｄまでの処理（図２７の（２））については，契約突合せ処理部１１１Ｂ及び人感検出処理部１１１Ｃがスキップされている。また，図２７において，振分処理部１１１Ａから在宅時間計測処理部１１１Ｆまでの処理（図２７の（３）（４）（５）については，スキップが行われず，各処理部における処理が実行されている。したがって，図２８の処理情報１２２Ｂには，スキップを行う契約突合せ処理部１１１Ｂ及び人感検出処理部１１１Ｃの処理結果に関する情報が記憶されている。具体的に，図２８の処理情報１２２Ｃにおいては，Ｅｖ３と，Ｑ４とが関連付けて記憶されている。また，図２８の処理情報１２２Ｂには，Ｅｖ２と，Ｑ３と，Ｅｖ３と，Ｑ４とが関連付けて記憶されている。また，図２８の処理情報１２２Ａには，Ｅｖ１と，Ｑ２と，Ｅｖ２と，Ｑ３と，Ｅｖ３と，Ｑ４とが関連付けて記憶されている。
【０１０７】
ここで，図２８の例において，振分処理部１１１Ａは，処理情報１２２Ａに記憶された契約突合せ処理部１１１Ｂからスキップ判断情報を基づいて，人感検出処理部１１１Ｃの処理結果を稼動確認処理部１１１Ｄに送信している。すなわち，契約突合せ処理部１１１Ｂが振分処理部１１１Ａにスキップ判断情報を送信した場合，処理情報１２２Ｂに記憶されている情報は処理情報１２２Ａにも記憶されている。そのため，契約突合せ処理部１１１Ｂが振分処理部１１１Ａにスキップ判断情報を送信した場合，そのスキップ判断情報に情報が含まれる処理部には，振分処理部１１１Ａが処理結果を送信していることになる。
【０１０８】
そこで，例えば，契約突合せ処理部１１１Ｂは，後続処理に自処理の処理結果を送信する前に，処理情報１２２Ｂを確認する。そして，処理接続情報１２４Ｂより自処理の処理結果を送信すべき後続処理であっても処理情報１２２Ｂより前の処理部（振分処理部１１１Ａ）が送信していると判断できる場合，契約突合せ処理部１１１Ｂは，その後続処理に処理結果を送信しないものであってよい。
【０１０９】
具体的に，図２８の例において，契約突合せ処理部１１１Ｂが振分処理部１１１Ａから処理結果を受信した場合，契約突合せ処理部１１１Ｂは，初めに処理接続情報１２４Ｂを参照して，自処理の処理結果を送信すべき後続処理は人感検出処理部１１１Ｃ及びメール送信突合せ処理部１１１Ｅであると判断する。次に，契約突合せ処理部１１１Ｂは，処理情報１２２Ｂを参照し，契約突合せ処理部１１１Ｂは，過去に自処理の処理結果（Ｅｖ２）と，その処理結果の送信先である処理部の識別子（Ｑ３）との情報を振分処理部１１１Ａに送信していると判断する。そして，契約突合せ処理部１１１Ｂは，メール送信突合せ処理部１１１Ｅには自処理の処理結果を送信する必要があるが，人感検出処理部１１１Ｃへは自処理の処理結果を送信する必要がないと判断することができる。これにより，同じ処理結果を複数回受信する処理部の発生を防止することができる。なお，この場合は，上記の例で説明したように，全ての後続処理から処理結果を受信するまで前の処理部にスキップ判断情報の送信を待機する必要はない。
【０１１０】
また，図２７の例において，振分処理部１１１Ａが自処理の処理結果を送信する前に，振分処理部１１１Ａは，処理接続情報１２４を参照して，自処理部と送信先の処理部との間に複数の後続処理を有する処理部が存在するか否かを確認するものであってよい。具体的に，図２８の例において，振分処理部１１１Ａは，処理情報１２２Ａを参照して，稼動確認処理部１１１Ｄ（Ｑ４）に人感検出処理部１１１Ｃの処理結果（Ｅｖ３）を送信する。ここで，振分処理部１１１Ａと稼動確認処理部１１１Ｄとの間に存在する契約突合せ処理部１１１Ｂは，複数（二つ）の後続処理を有している。さらに，振分処理部１１１Ａからメール送信突合せ処理部１１１Ｅまでの処理についてはスキップされていないため，処理情報１２２Ａは，メール送信突合せ処理部１１１Ｅに関するスキップ判断情報を受信していない。したがって，図２７の例において，振分処理部１１１Ａは，処理情報１２２Ａのみに基づいて，契約突合せ処理部１１１Ｂの後続処理であるメール送信突合せ処理部１１１Ｅが存在することを認識できない。
【０１１１】
そこで，振分処理部１１１Ａは，自処理の処理結果を送信する際に，処理接続情報１２４を参照して，自処理部と送信先の処理部との間に複数の後続処理を有する処理部が存在するか否かを確認する。これにより，振分処理部１１１Ａは，処理情報１２２Ａにスキップ判断情報が記憶されていない処理部（メール送信突合せ処理部１１１Ｅ）を認識することが可能になり，その処理部に向けて自処理の処理結果を送信することが可能になる。  
【０１１２】
［第２の実施の形態における実行管理処理の具体例（２）］
次に，第２の実施の形態における実行管理処理の別の具体例について説明する。図２９は，第２の実施の形態における実行管理処理におけるスキップ無効指示を説明するシーケンスチャート図である。また，図３０は，第２の実施の形態における処理情報を説明する図である。図２２及び図３０を参照しながら図２９の実行管理処理におけるスキップ無効指示の具体例を説明する。
【０１１３】
［図２９の具体例］
図２９は，メール送信突合せ処理部１１１Ｅに突合せ情報更新指示（Ｅｖ１０）が送信された場合（図２９の（１））の図である。図２９の例において，突合せ情報更新指示を受信したメール送信突合せ処理部１１１Ｅは，スキップ無効指示を直前の処理部である契約突合せ処理部１１１Ｂに送信する（Ｓ３２，図２９の（２））。そして，スキップ無効指示を受信した契約突合せ処理部１１１Ｂは，処理情報１２２Ｂに契約突合せ処理部１１１Ｂの処理結果が記憶されているため（Ｓ４１のＹＥＳ），図３０に示すように，スキップ無効指示に含まれる契約突合せ処理部１１１Ｂの処理結果と関連付けて記憶された情報を消去する（Ｓ４２）。さらに，契約突合せ処理部１１１Ｂは，スキップ無効指示を直前の処理部である振分処理部１１１Ａに送信する（Ｓ４３，図２９の（３））。そして，スキップ無効指示を受信した振分処理部１１１Ａは，処理情報１２２Ａに振分処理部１１１Ａの処理結果が記憶されているため（Ｓ４１のＹＥＳ），図３０に示すように，スキップ無効指示に含まれる振分処理部１１１Ａの処理結果と関連付けて記憶された情報を消去する（Ｓ４２）。なお，図３０に示すように，突合せ情報更新指示を受信したメール送信突合せ処理部１１１Ｅは，契約突合せ処理部１１１Ｂにスキップ無効指示を送信する前に，処理情報１２２Ｅに記憶された情報を全て消去するものであってもよい。
【０１１４】
また，図２９及び図３０の例においても，図２７及び図２８の場合と同様に，契約突合せ処理部１１１Ｂは，一方の後続処理については自処理部がスキップされており，他方の後続処理については自処理部から処理結果を送信しているという状態が発生する可能性がある。そのため，契約突合せ処理部１１１Ｂは，全ての後続処理から処理結果を受信するまで，前の処理部にスキップ判断情報を送信しないものであってよい。また，契約突合せ処理部１１１Ｂは，前の処理部である振分処理部１１１Ａに送ったスキップ判断情報に情報が含まれる処理部については，振分処理部１１１Ａが処理情報を送信するものと判断するものでもあってよい。
【０１１５】
[第３の実施の形態]
次に，第３の実施の形態について説明する。図３１及び図３２は，第３の実施の形態における実行管理処理を説明する図である。
【０１１６】
図３１は，複数の処理部の処理結果を受信する処理部が存在する場合の例である。図３１における処理連携システム１０は，図２２の処理連携システム１０とは異なり，稼動確認処理部１１１Ｄ及び在宅時間計測処理部１１１Ｆの後続処理として統計処理部１１１Ｇが存在する。統計処理部１１１Ｇは，例えば，稼動確認処理部１１１Ｄ及び在宅時間計測処理部１１１Ｆの処理結果から必要な情報を抽出して，経営分析に用いられる統計情報等を作成するものである。そして，統計処理部１１１Ｇは，例えば，作成した統計情報を処理すべき後続処理に送信する。
【０１１７】
図３１の例において，統計処理部１１１Ｇは，稼動確認処理部１１１Ｄ及び在宅時間計測処理部１１１Ｆからそれぞれの処理結果を受信し，それぞれの処理結果に基づいて自処理を実行する。そして，統計処理部１１１Ｇは，稼動確認処理部１１１Ｄ及び在宅時間計測処理部１１１Ｆのそれぞれに対するスキップ判断情報を作成して送信する。
【０１１８】
ここで，図３１の例のように，複数の処理部から処理結果を受信して自処理を行う処理部が存在する場合，各処理部は，作成したスキップ判断情報の送信するための送信先情報として，受信した処理結果の送信元情報を記憶する必要がある。そのため，図３１の例において，各処理部は，自処理が処理した処理結果の送信時に，自処理を識別するための識別子を関連付けて送信する（図１３のＳ２２）。具体的に，図３１の例においては，稼動確認処理部１１１Ｄは，自処理の処理結果に稼動確認処理部１１１Ｄを識別するための識別子を関連付けて送信し，在宅時間計測処理部１１１Ｆは，自処理の処理結果に在宅時間計測処理部１１１Ｆを識別するための識別子を関連付けて送信する。なお，処理結果の送信元処理部を識別するための識別子は，例えば，処理結果を送信するパケットのヘッダー情報から取得するものであってもよい。
【０１１９】
また，図３２は，同一処理を行う処理部が複数存在する場合の例である。図３２における処理連携システム１０は，契約突合せ処理部１１１１Ｂと，契約突合せ処理部１１１２Ｂと，契約突合せ処理部１１１３Ｂとを有する。すなわち，図３２の例における振分処理部１１１Ａは，例えば，入力データに含まれる契約者ＩＤを３で除算したときの剰余に基づいて，送信先の後続処理を決定する。具体的に，振分処理部１１１Ａは，例えば，剰余が０であるときは契約突合せ処理部１１１１Ｂに送信し，剰余が１であるときは契約突合せ処理部１１１２Ｂに送信し，剰余が２であるときは契約突合せ処理部１１１３Ｂに送信する。そして，各契約突合せ処理部は，自処理の処理結果を人感検出処理部１１１Ｃ及びメール送信突合せ処理部１１１Ｅに送信する。
【０１２０】
図３２の例において，人感検出処理部１１１Ｃ及びメール送信突合せ処理部１１１Ｅは，同一種類であるが複数の処理部から処理結果を受信する。ここで，図３１と同様に，各契約突合せ処理部は，自処理が処理した処理結果の送信時に，自処理を識別するための識別子を関連付けて送信する（図１３のＳ２２）。そして，人感検出処理部１１１Ｃ及びメール送信突合せ処理部１１１Ｅは，各契約突合せ処理部から受信した処理結果に基づいて，それぞれスキップ判断情報を作成し，各契約突合せ処理部から処理結果と共に送信された識別子に基づいて，それぞれスキップ判断情報を送信する。
【０１２１】
このように，第３の実施の形態においては，複数の処理部から処理結果を受信して自処理を行う処理部が存在する場合，各処理部は，自処理が処理した処理結果の送信時に，自処理を識別するための識別子を関連付けて送信する。これにより，複数の処理部から処理結果を受信する処理部は，それぞれの処理結果に基づいて作成したスキップ判断情報を，処理結果を送信した複数の処理部にそれぞれ送信することが可能になる。
【０１２２】
以上の実施の形態をまとめると，以下の付記のとおりである。
【０１２３】
（付記１）
第１の処理部が第１の処理を実行した結果である第１の処理結果を，第１の記憶部に記憶するとともに第２の処理部に送信する第１の工程と，
前記第２の処理部が前記第１の処理部から受信した前記第１の処理結果に基づいて第２の処理を実行した結果である第２の処理結果を，第２の記憶部に記憶するとともに第３の処理部に送信し，前記第２の処理結果と前記第３の処理部を識別する識別子とを，前記第１の処理部に送信する第２の工程と，
前記第１の処理部が前記第２の処理部から受信した前記第２の処理結果と前記識別子とを，前記第１の処理結果に関連付けて前記第１の記憶部に記憶する第３の工程と，
前記第３の工程の後に実行された前記第１の処理の処理結果が前記第１の記憶部に記憶されている前記第１の処理結果と一致する場合に，前記第１の処理部が，前記第１の処理結果と関連付けて記憶されている前記第２の処理結果と前記識別子を抽出し，前記識別子によって識別した前記第３の処理部に前記第２の処理結果を送信する第４の工程と，を有する
処理連携方法。
【０１２４】
（付記２）
付記１において，
前記第２の工程では，前記第１の処理結果によって前記第２の処理結果が一意に定まる場合に，前記第１の処理部への送信を行う処理連携方法。
【０１２５】
（付記３）
付記１において，
前記第２の工程では，前記第２の処理部が前記第１の処理部から前記第１の処理結果を受信した受信回数が所定の閾値を超えた場合に，前記第１の処理部への送信を行う処理連携方法。
【０１２６】
（付記４）
付記１において，さらに，
前記第１の処理部が前記第１の記憶部から抽出した前記第２の処理結果を前記第３の処理部に送信した送信回数を記憶する第５の工程を有する処理連携方法。
【０１２７】
（付記５）
付記４において，
前記第５の工程では，前記送信回数が所定の閾値を超えた場合に，前記第１の処理部が記憶した前記送信回数を前記第２の処理部に送信する処理連携方法。
【０１２８】
（付記６）
付記１において
前記第２の工程の前に，前記第２の処理部が該第２の処理よりも後に実行される処理の処理結果と識別子とを受信している場合，前記第２の工程では，前記第３の処理部への送信を，前記第２の処理部が前記受信した識別子が示す処理部のうち最後に処理が実行される処理部に，前記第２の処理結果を送信することにより行い，前記第１の処理部への送信を，前記第２の処理結果と前記識別子と前記第２の処理部が受信した処理結果と前記第２の処理部が受信した識別子とを送信することにより行い，
前記第３の工程では，前記第１の処理部が前記第２の処理部から受信した処理結果と識別子とを前記第１の処理結果に関連付けて前記第１の記憶部に記憶し，
前記第４の工程では，前記第３の処理部への送信を，記憶されている前記第１の処理結果と関連付けて記憶された識別子のうち最後に処理が実行される処理部を示す識別子と，記憶されている前記第１の処理結果と関連付けて記憶された処理結果のうち最後に実行される処理の処理結果とを抽出し，前記最後に処理が実行される処理部に前記抽出した処理結果を送信することにより行う処理連携方法。
【０１２９】
（付記７）
付記１において，さらに，
前記第３の工程の後に実行される第２の処理の処理結果が，前記第２の処理結果と異なる処理結果になる可能性がある場合，前記第２の処理結果と関連付けて記憶された情報を消去する第６の工程を有する処理連携方法。
【０１３０】
（付記８）
付記６において，
前記第１の処理結果に基づいて実行される前記第２の処理が複数ある場合，前記第４の工程では，全ての前記第２の処理部から前記第２の処理結果と前記識別子とを受信するまで，前記第１の処理部が全ての前記第２の処理部に前記第１の処理結果を送信する処理連携方法。
【０１３１】
（付記９）
付記１において，さらに，
前記第２の処理部が該第２の処理よりも後に処理が実行される処理部から処理結果と識別子を受信した場合，前記第２の処理部が前記第１の処理部に前記第２の処理結果と前記識別子と前記第２の処理が受信した処理結果と前記第２の処理が受信した識別子とを送信する第７の工程を有する処理連携方法。
【０１３２】
（付記１０）
付記１において，
前記第１の処理と，前記第２の処理と，前記第３の処理は，入力データに基づいてクエリ処理を行い，該クエリ処理の結果を出力する処理連携方法。
【０１３３】
（付記１１）
付記１において，
前記第１の工程では，前記第１の処理部が前記第２の処理部に前記第１の処理部を識別する識別子を送信し，
前記第２の工程では，前記第２の処理部が前記第３の処理部に前記第１の処理部を識別する識別子を送信し，
前記第４の工程では，前記第１の処理部が前記第３の処理部に前記第１の処理部を識別する識別子を送信する処理連携方法。
【０１３４】
（付記１２）
第１の処理部が第１の処理を実行した結果である第１の処理結果を，第１の記憶部に記憶するとともに第２の処理部に送信し，
前記第２の処理部が前記第１の処理部から受信した前記第１の処理結果に基づいて第２の処理を実行した結果である第２の処理結果を，第２の記憶部に記憶するとともに第３の処理部に送信し，前記第２の処理結果と前記第３の処理部を識別する識別子とを，前記第１の処理部に送信し，
前記第１の処理部が前記第２の処理部から受信した前記第２の処理結果と前記識別子とを，前記第１の処理結果に関連付けて前記第１の記憶部に記憶し，
前記第１の処理の処理結果が前記第１の記憶部に記憶されている前記第１の処理結果と一致する場合に，前記第１の処理部が，前記第１の処理結果と関連付けて記憶されている前記第２の処理結果と前記識別子を抽出し，前記識別子によって識別した前記第３の処理部に前記第２の処理結果を送信する
処理をコンピュータに実行させる処理連携プログラム。
【０１３５】
（付記１３）
第１の処理部と，第２の処理部と，第３の処理部とを有する処理連携システムであって，
前記第１の処理部は，第１の処理を実行した結果である第１の処理結果を，第１の記憶部に記憶するとともに第２の処理部に送信し，
前記第２の処理部は，前記第１の処理部から受信した前記第１の処理結果に基づいて第２の処理を実行した結果である第２の処理結果を，第２の記憶部に記憶するとともに第３の処理部に送信し，前記第２の処理結果と前記第３の処理部を識別する識別子とを，前記第１の処理部に送信し，
前記第１の処理部は，さらに，前記第１の処理部が前記第２の処理部から受信した前記第２の処理結果と前記識別子とを，前記第１の処理結果に関連付けて前記第１の記憶部に記憶し，
前記第１の処理部は，さらに，前記第１の処理の処理結果が前記第１の記憶部に記憶されている前記第１の処理結果と一致する場合に，前記第１の処理部が，前記第１の処理結果と関連付けて記憶されている前記第２の処理結果と前記識別子を抽出し，前記識別子によって識別した前記第３の処理部に前記第２の処理結果を送信する
処理連携システム。
【符号の説明】
【０１３６】
１Ａ：物理マシン            １Ｂ：物理マシン
１Ｃ：物理マシン            ２：クライアント端末
１１１Ａ：処理部            １１１Ｂ：処理部
１１１Ｃ：処理部            １２０Ａ：情報格納領域
１２０Ｂ：情報格納領域      １２０Ｃ：情報格納領域
【図１】
2015207148.tif 000003
【図２】
2015207148.tif 000004
【図３】
2015207148.tif 000005
【図４】
2015207148.tif 000006
【図５】
2015207148.tif 000007
【図６】
2015207148.tif 000008
【図７】
2015207148.tif 000009
【図８】
2015207148.tif 000010
【図９】
2015207148.tif 000011
【図１０】
2015207148.tif 000012
【図１１】
2015207148.tif 000013
【図１２】
2015207148.tif 000014
【図１３】
2015207148.tif 000015
【図１４】
2015207148.tif 000016
【図１５】
2015207148.tif 000017
【図１６】
2015207148.tif 000018
【図１７】
2015207148.tif 000019
【図１８】
2015207148.tif 000020
【図１９】
2015207148.tif 000021
【図２０】
2015207148.tif 000022
【図２１】
2015207148.tif 000023
【図２２】
2015207148.tif 000024
【図２３】
2015207148.tif 000025
【図２４】
2015207148.tif 000026
【図２５】
2015207148.tif 000027
【図２６】
2015207148.tif 000028
【図２７】
2015207148.tif 000029
【図２８】
2015207148.tif 000030
【図２９】
2015207148.tif 000031
【図３０】
2015207148.tif 000032
【図３１】
2015207148.tif 000033
【図３２】
2015207148.tif 000034