(57)【要約】      （修正有）【課題】復旧処理の効率化を図ることが可能となる情報処理システムの提供。【解決手段】情報処理システムは、サーバ１、端末２（２Ａ、２Ｂ・・・）を含む。サーバは、端末２Ａ、２Ｂに対応するシナリオＡ、Ｂを記憶し、サーバ及び端末は、シナリオに従い処理を実行する。処理が先行する端末２Ａでエラーが発生し、エラー情報がサーバへ送信されると、サーバは、エラー情報が登録されているか否かを判断し、登録されていない場合、端末２ＢのシナリオＢに基づく処理を中断し、エラー情報に対応するエラーを解消する解消情報を登録し、解消情報に基づきシナリオＡを修正し、端末２Ａ、２Ｂとの処理を再開する。その後、端末２Ｂから同様のエラー情報が送信された場合、サーバは既に登録されている解消情報を読み出し、シナリオＢを修正する。サーバは、他の端末の処理を停止することなく続行し、修正後サーバと端末２ＢとのシナリオＢに基づく処理が再開する。【選択図】図１
2019113961.tif 000002
【特許請求の範囲】
【請求項１】
第１端末から第１シナリオに基づくエラー情報を取得する取得部と、
取得した前記エラー情報が登録されているか否かを判断する判断部と、
前記エラー情報が登録されていないと判断した場合に、前記第１端末とは異なる第２端末に係る第２シナリオに基づく処理を中断する中断部と
を備える情報処理装置。
【請求項２】
前記エラー情報に対応するエラーを解消する解消情報を登録する登録部と、
前記解消情報に基づき前記第１シナリオを更新する更新部と
を備える請求項１に記載の情報処理装置。
【請求項３】
前記第１シナリオを更新した後に、中断した第２シナリオに基づく処理を再開する再開部
を備える請求項１または２に記載の情報処理装置。
【請求項４】
第１端末から第１シナリオに基づくエラー情報を取得し、
取得した前記エラー情報が登録されているか否かを判断し、
前記エラー情報が登録されていないと判断した場合に、前記第１端末とは異なる第２端末に係る第２シナリオに基づく処理を中断する
処理をコンピュータに実行させるプログラム。
【請求項５】
第１端末から第１シナリオに基づくエラー情報を取得し、
取得した前記エラー情報が登録されているか否かを判断し、
前記エラー情報が登録されていないと判断した場合に、前記第１端末とは異なる第２端末に係る第２シナリオに基づく処理を中断する
処理をコンピュータに実行させる情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、プログラム及び情報処理方法に関する。
【背景技術】
【０００２】
従来、ネットワークにおける障害の抑止またはネットワークの障害の自動回復を図る障害自動回復システムが提案されている（例えば特許文献１〜４参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２６７３５２号公報
【特許文献２】特開２０１２−１３８００１号公報
【特許文献３】特開２００４−３８５３５号公報
【特許文献４】特開２００９−２８９１５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術では復旧処理の効率が十分でないという問題がある。
【０００５】
一つの側面では、復旧処理の効率化を図ることが可能となる情報処理装置等を提供することにある。
【課題を解決するための手段】
【０００６】
一つの案では、情報処理装置は、第１端末から第１シナリオに基づくエラー情報を取得する取得部と、取得した前記エラー情報が登録されているか否かを判断する判断部と、前記エラー情報が登録されていないと判断した場合に、前記第１端末とは異なる第２端末に係る第２シナリオに基づく処理を中断する中断部とを備える。
【発明の効果】
【０００７】
一つの側面では、復旧処理の効率化を図ることが可能となる。
【図面の簡単な説明】
【０００８】
【図１】情報処理システムの概要を示す説明図である。
【図２】コンピュータのハードウェア群を示すブロック図である。
【図３】サーバコンピュータのハードウェア群を示すブロック図である。
【図４】シナリオファイルの記憶内容を示す説明図である。
【図５】エラーＤＢのレコードレイアウトを示す説明図である。
【図６】エラー解消方法を示す説明図である。
【図７】更新処理の手順を示すフローチャートである。
【図８】コンピュータ及びサーバコンピュータ間のシナリオ処理の手順を示すフローチャートである。
【図９】コンピュータ及びサーバコンピュータ間のシナリオ処理の手順を示すフローチャートである。
【図１０】コンピュータ及びサーバコンピュータ間のシナリオ処理の手順を示すフローチャートである。
【図１１】コンピュータ及びサーバコンピュータ間のシナリオ処理の手順を示すフローチャートである。
【図１２】シナリオ処理の手順を示すフローチャートである。
【図１３】シナリオ処理の手順を示すフローチャートである。
【図１４】上述した形態のサーバコンピュータの機能ブロック図である。
【図１５】実施の形態４に係るサーバコンピュータのハードウェア群を示すブロック図である。
【発明を実施するための形態】
【０００９】
実施の形態１
以下実施の形態を、図面を参照して説明する。図１は情報処理システムの概要を示す説明図である。情報処理システムは情報処理装置１、及び、端末装置２Ａ、２Ｂ・・・（以下場合により２で代表する）を含む。情報処理装置１は、サーバコンピュータまたはパーソナルコンピュータ等である。実施形態では情報処理装置１をサーバコンピュータ１と読み替えて説明する。端末装置２は例えば、パーソナルコンピュータ、スマートフォン、携帯電話機またはタブレット等である。以下では情報処理装置２をコンピュータ２と読み替えて説明する。
【００１０】
サーバコンピュータ１及び各コンピュータ２はインターネット、ＬＡＮ（Local Area Network）、Wi-Fi(登録商標)網、Bluetooth(登録商標)等の近距離無線通信網、公衆回線網等の通信網Ｎを介して相互に接続されている。なお、実施形態では説明を容易にするために、２台のコンピュータ２Ａ、２Ｂを用いる例を説明するが、台数は複数であればよくこれに限るものではない。
【００１１】
サーバコンピュータ１は各コンピュータ２に対応したシナリオを記憶している。図１の例ではコンピュータ２Ａに対応するシナリオＡ、及び、コンピュータ２Ｂに対応するシナリオＢが記憶されている。サーバコンピュータ１及びコンピュータ２は、予め定められたシナリオに従い、処理を実行する。シナリオは複数の処理に分かれている。例えば、第１の処理としてコンピュータ２Ａがブラウザを起動する処理、第２の処理としてGoogle(登録商標)の検索ボックスにキーワードを入力する処理、第３の処理として検索を実行する処理、第４の処理として検索結果を表示する処理等である。
【００１２】
各コンピュータ２はシナリオを同時期に実行し始めるが、コンピュータ２の処理能力または通信速度の相違により処理の進行に相違が生じ始める。図１の例ではコンピュータ２Ａは、全シナリオの５０％を行っているが、コンピュータ２Ｂは依然として全シナリオの２５％に達したに過ぎない。
【００１３】
ここで、先行するコンピュータ２Ａにおいてエラーが発生し、エラー情報をサーバコンピュータ１へ送信したとする。この場合、サーバコンピュータ１は、エラー情報が登録されているか否かを判断する。サーバコンピュータ１は登録されていないと判断した場合、コンピュータ２ＢのシナリオＢに基づく処理を中断する。その後、サーバコンピュータ１はエラー情報に対応するエラーを解消する解消情報を登録する。
【００１４】
また、サーバコンピュータ１は解消情報に基づき、シナリオＡを修正する。その後サーバコンピュータ１は、コンピュータ２Ａ、コンピュータ２Ｂとの処理を再開する。コンピュータ２Ｂから同様のエラー情報が送信された場合、サーバコンピュータ１はエラー情報が登録されているか否かを判断する。サーバコンピュータ１は既にエラー情報が登録されているため、解消情報を読み出し、シナリオＢを修正する。サーバコンピュータ１は、この際、他のコンピュータ２の処理を停止することなく続行する。修正後サーバコンピュータ１と、コンピュータ２ＢとのシナリオＢに基づく処理が再開する。以下詳細を説明する。
【００１５】
図２はコンピュータ２のハードウェア群を示すブロック図である。コンピュータ２は制御部としてのＣＰＵ（Central Processing Unit）２１、ＲＡＭ（Random Access Memory）２２、入力部２３、表示部２４、記憶部２５、時計部２８、及び、通信部２６等を含む。ＣＰＵ２１は、バス２７を介してハードウェア各部と接続されている。ＣＰＵ２１は記憶部２５に記憶された制御プログラム２５Ｐに従いハードウェア各部を制御する。なお、ＣＰＵ２１は複数のプロセッサコアを搭載したマルチコアプロセッサであっても良い。ＲＡＭ２２は例えばＳＲＡＭ（Static RAM）、ＤＲＡＭ(Dynamic RAM)、フラッシュメモリ等である。ＲＡＭ２２は、記憶部としても機能し、ＣＰＵ２１による各種プログラムの実行時に発生する種々のデータを一時的に記憶する。
【００１６】
入力部２３はマウス、キーボード、タッチパネル、ボタン等の入力デバイスであり、受け付けた操作情報をＣＰＵ２１へ出力する。表示部２４は液晶ディスプレイまたは有機ＥＬ（electroluminescence）ディスプレイ等であり、ＣＰＵ２１の指示に従い各種情報を表示する。通信部２６はインタフェースである通信モジュールであり、サーバコンピュータ１等と間で情報の送受信を行う。時計部２８は日時情報をＣＰＵ２１へ出力する。記憶部２５は大容量メモリまたはハードディスクであり、制御プログラム２５Ｐ等を記憶している。
【００１７】
図３はサーバコンピュータ１のハードウェア群を示すブロック図である。サーバコンピュータ１は制御部としてのＣＰＵ１１、ＲＡＭ１２、入力部１３、表示部１４、記憶部１５、時計部１８、及び、通信部１６等を含む。ＣＰＵ１１は、バス１７を介してハードウェア各部と接続されている。ＣＰＵ１１は記憶部１５に記憶された制御プログラム１５Ｐに従いハードウェア各部を制御する。なお、ＣＰＵ１１は複数のプロセッサコアを搭載したマルチコアプロセッサであっても良い。またＣＰＵ１１に限るものではなく１または複数のＧＰＵ(Graphics Processing Unit)をさらに組みわせる形態であってもよい。ＲＡＭ１２は例えばＳＲＡＭ（Static RAM）、ＤＲＡＭ(Dynamic RAM)、フラッシュメモリ等である。ＲＡＭ１２は、記憶部としても機能し、ＣＰＵ１１による各種プログラムの実行時に発生する種々のデータを一時的に記憶する。
【００１８】
入力部１３はマウス、キーボード、タッチパネル、ボタン等の入力デバイスであり、受け付けた操作情報をＣＰＵ１１へ出力する。表示部１４は液晶ディスプレイまたは有機ＥＬディスプレイ等であり、ＣＰＵ１１の指示に従い各種情報を表示する。通信部１６は通信モジュールであり、コンピュータ２等と間で情報の送受信を行う。時計部１８は日時情報をＣＰＵ１１へ出力する。
【００１９】
また実施形態では、サーバコンピュータ１は単体のものとして説明するがこれに限るものではない。例えば物理的に複数のサーバコンピュータ１、１、・・・により構成されていてもよく、また複数の仮想マシンにより構成されていてもよい。記憶部１５は大容量メモリまたはハードディスクであり、制御プログラム１５Ｐ、エラーＤＢ１５１及びシナリオファイル１５２を記憶している。なお、エラーＤＢ１５１及びシナリオファイル１５２を記憶部１５に記憶する例を示すがこれに限るものではない。通信網Ｎを介して接続されるＤＢサーバ（図示せず）等、他の記憶領域に記憶してもよい。
【００２０】
図４はシナリオファイル１５２の記憶内容を示す説明図である。シナリオファイル１５２はコンピュータ２に実行させるシナリオが、コンピュータ２毎に記憶されている。図４の例では、コンピュータ２Ａに実行させるシナリオＡ、及び、コンピュータ２Ｂに実行させるシナリオＢ等が記憶されている。実施形態ではシナリオＡ及びシナリオＢの記憶内容は実質的に同一のものであるとして説明する。
【００２１】
シナリオには、複数の処理（部品）内容、及び、各処理のパラメータを示すプログラムコードが記述されている。図４の例では処理１、及び、処理１に続いて実行される処理２が記述されている。また各処理１及び処理２には「＜arg no=”1”・・・</arg>」のようにパラメータが記述されている。
【００２２】
ＣＰＵ１１は、コンピュータ２ＡとシナリオＡを実行する場合、シナリオファイル１５２からシナリオＡの処理１を読み出す。ＣＰＵ１１は、読み出したシナリオＡの処理１の実行命令を、通信部１６を介してコンピュータ２Ａに出力する。コンピュータ２ＡのＣＰＵ２１は、処理１の実行命令に従い、処理１を実行する。ＣＰＵ２１は、実行結果をサーバコンピュータ１へ送信する。サーバコンピュータ１のＣＰＵ１１は、処理１の実行結果を受信した場合、シナリオファイル１５２から処理２を読み出し、同様の処理を行う。
【００２３】
コンピュータ２ＡのＣＰＵ２１は、実行命令を受けたにもかかわらずエラーが発生した場合、エラー情報をサーバコンピュータ１へ送信する。エラー情報にはエラーの内容を特定するための固有の識別情報（以下、エラーＩＤという）が含まれる。またエラー情報にはエラーＩＤに加えてエラーの具体的内容を示すメッセージ（以下、エラー内容という）が含まれていてもよい。
【００２４】
図５はエラーＤＢ１５１のレコードレイアウトを示す説明図である。エラーＤＢ１５１はエラーＩＤフィールド、エラー内容フィールド、解消ＩＤフィールド、修正箇所フィールド及び解消方法フィールド等を含む。エラー内容フィールドには、エラーＩＤに対応付けて、エラーの具体的内容が記憶されている。例えばエラーＩＤ「E00002」については「指定されたファイルが見つかりません。」とするエラー内容が記憶されている。ＣＰＵ１１は、コンピュータ２から新たなエラーＩＤ及びエラー内容を受信した場合、エラーＤＢ１５１に新たなレコードを生成し、エラーＩＤ及びエラー内容を記憶する。
【００２５】
解消ＩＤフィールドには、エラーＩＤに対応付けて、当該エラーに対する解消方法を特定するための識別情報（以下、解消ＩＤという）が記憶されている。修正箇所フィールドには、解消ＩＤに対応付けて修正箇所を示す情報が記憶されている。また解消方法フィールドには解消ＩＤに対応付けてエラーの解消方法が記憶されている。具体的には、エラーを解消するためのコマンドが記憶されている。例えばエラーコード「E00003」についてはコマンド「再起動」が記憶されている。
【００２６】
図６はエラー解消方法を示す説明図である。図６には、図５のエラーＩＤ「E00002
」で示すエラー例が示されている。図６Ａは修正前のシナリオＡを示し、図６Ｂは修正後のシナリオＡを示す。図６Ａに示すように処理２（図５では処理２に対応する部品Parts050で示す）のパラメータ３（arg no=3）においてエラーが発生している。オペレータは処理２のパラメータ３のコードを分析し、絶対パス(C:￥￥Users￥￥demo.log)がダブルクオーテーションで囲まれていないことがエラーの原因であると判断する。
【００２７】
オペレータは入力部１３、コンピュータ２Ａまたは図示しない他のコンピュータを用いて通信部１６を介して、シナリオＡを修正する。具体的には図６Ｂに示すように絶対パスをダブルクオーテーションで囲み、「”C:￥￥Users￥￥demo.log”」とする。オペレータは修正箇所のエラーを解消するためのコードを解消方法として作成する。ＣＰＵ１１は、入力部１３を通じて、入力された修正箇所及び解消方法を、解消ＩＤに対応付けてエラーＤＢ１５１に記憶する。ＣＰＵ１１は、解消ＩＤに対応付けて修正箇所及び解消方法を記憶する。
【００２８】
ＣＰＵ１１は、エラー情報がエラーＤＢ１５１に記憶されていない場合、上述した通り、コンピュータ２Ａに対応するシナリオＡの修正を行う。この際ＣＰＵ１１は、コンピュータ２Ｂのシナリオ進行を中断する。ただし、中断する際、ＣＰＵ１１は、コンピュータ２ＢからシナリオＢに基づく処理を既に送信している場合、当該処理に基づく処理結果を受信した段階で、シナリオＢに基づく処理を中断するようにしてもよい。例えばブラウザを起動する処理２を終えて、ブラウザのテキストボックスに検索用語を入力する処理３が、サーバコンピュータ１からコンピュータ２Ｂに送信されているとする。
【００２９】
この場合、サーバコンピュータ１のＣＰＵ１１は、コンピュータ２ＢのＣＰＵ２１により、処理３に基づく検索用語の入力処理を終え、入力処理を完了したことを示す処理結果を受信した段階で、シナリオＢに基づく処理を中断すればよい。
【００３０】
サーバコンピュータ１のＣＰＵ１１は、コンピュータ２Ｂから上述したエラーコード「E00002」に係るエラー情報を受信した場合、エラーＤＢ１５１にすでにエラーコードが記憶されているか否かを判断する。ＣＰＵ１１は、エラーコードが記憶されていると判断した場合、対応する修正箇所及び解消方法を、エラーＤＢ１５１から読み出す。ＣＰＵ１１は、読み出した修正箇所及び解消方法を参照し、シナリオファイル１５２に記憶したシナリオＢを修正する。ＣＰＵ１１は、エラーコードに基づき修正した箇所の処理をコンピュータ２Ｂへ送信する。コンピュータ２ＢのＣＰＵ２１は、エラーが発生した処理を再度実行し、処理結果をサーバコンピュータ１へ送信する。この際、コンピュータ２Ａを含む他のコンピュータ２は処理を中断せず続行する。
【００３１】
以上のハードウェア群において各種ソフトウェア処理を、フローチャートを用いて説明する。図７は更新処理の手順を示すフローチャートである。サーバコンピュータ１のＣＰＵ１１は、コンピュータ２からエラー情報を取得する(ステップＳ７１)。ＣＰＵ１１は、エラー情報がエラーＤＢ１５１に登録されているか否かを判断する(ステップＳ７２)。ＣＰＵ１１は、エラー情報が登録されていないと判断した場合(ステップＳ７２でＮＯ)、処理をステップＳ７３に移行させる。
【００３２】
ＣＰＵ１１は、他のコンピュータ２のシナリオに基づく処理の中断を行う(ステップＳ７３)。ＣＰＵ１１は、エラーＩＤ、エラー内容、解消ＩＤ、修正作業により把握できた修正箇所及び解消方法を、エラーＤＢ１５１に記憶する(ステップＳ７４)。ＣＰＵ１１は、エラー情報を送信したコンピュータ２の対応するシナリオを更新する(ステップＳ７５)。ＣＰＵ１１は、他のコンピュータ２のシナリオに基づく処理を再開する(ステップＳ７６)。
【００３３】
ＣＰＵ１１は、エラー情報が登録されていると判断した場合(ステップＳ７２でＹＥＳ)、処理をステップＳ７７へ移行させる。ＣＰＵ１１は、エラー情報に含まれるエラーＩＤを参照し、エラーＤＢ１５１から、対応する修正箇所及び解消方法を読み出す(ステップＳ７７)。ＣＰＵ１１は、読み出した修正箇所及び解消方法に基づき、対応するシナリオを更新する(ステップＳ７８)。これにより復旧処理の効率化を図ることが可能となる。またエラーが発生したとしても円滑に復旧することが可能となる。また進行が遅れているコンピュータ２に対しても中断させることで、同時に重複した作業が発生することを防止することが可能となる。また他のコンピュータ２のシナリオにも解消情報が反映されるためコンピュータ２の台数が増加した場合でも、効率よくシナリオに基づく処理を並行して実行することが可能となる。
【００３４】
実施の形態２
実施の形態２はコンピュータ２から処理結果を取得した後にシナリオを中断する形態に関する。図８から図１１はコンピュータ２及びサーバコンピュータ１間のシナリオ処理の手順を示すフローチャートである。以下のフローチャートでは、コンピュータ２ＡのシナリオＡが、コンピュータ２ＢのシナリオＢよりも先行して処理されており、シナリオＡの処理Ｎ＋１においてエラーが存在する例を挙げて説明する。
【００３５】
サーバコンピュータ１のＣＰＵ１１は、シナリオファイル１５２からシナリオＡの処理Ｎを読み出し、コンピュータ２Ａへ送信する(ステップＳ８１)。コンピュータ２ＡのＣＰＵ２１は、処理Ｎを受信する(ステップＳ８２)。なお、サーバコンピュータ１とコンピュータ２との情報の送受信には双方のＩＰアドレスが送信されているものとして説明する。ＣＰＵ２１は、処理Ｎを実行する(ステップＳ８３)。
【００３６】
ＣＰＵ２１は、処理Ｎが成功したことを示す処理Ｎの処理結果をサーバコンピュータ１へ送信する(ステップＳ８４)。サーバコンピュータ１のＣＰＵ１１は、シナリオＡの処理Ｎの処理結果を受信する(ステップＳ８５)。ＣＰＵ１１は、続いてシナリオＡの処理Ｎ＋１をコンピュータ２Ａへ送信する(ステップＳ８６)。
【００３７】
コンピュータ２ＡのＣＰＵ２１は、処理Ｎ＋１を受信する(ステップＳ８７)。サーバコンピュータ１のＣＰＵ１１は、コンピュータ２Ｂに対し、シナリオＢの処理Ｎを送信する(ステップＳ８８)。コンピュータ２ＢのＣＰＵ２１は、処理Ｎを受信する(ステップＳ８９)。コンピュータ２ＡのＣＰＵ２１は、処理Ｎ＋１を実行する(ステップＳ９１)。ここで、上述した通りシナリオＡの処理Ｎ＋１はエラーを含んでいる。コンピュータ２ＡのＣＰＵ２１は、処理Ｎ＋１のエラー情報を、サーバコンピュータ１へ送信する(ステップＳ９２)。
【００３８】
サーバコンピュータ１のＣＰＵ１１は、処理Ｎ＋１のエラー情報を受信する(ステップＳ９３)。コンピュータ２ＢのＣＰＵ２１は、処理Ｎを実行する(ステップＳ９４)。サーバコンピュータ１のＣＰＵ１１は、エラー情報をステップＳ９３で受信した場合でも、コンピュータ２Ｂの処理Ｎの処理結果を受信するまで、中断命令を行うことなく待機する(ステップＳ９５)。コンピュータ２ＢのＣＰＵ２１は、処理Ｎの処理結果をサーバコンピュータ１へ送信する(ステップＳ９６)。
【００３９】
サーバコンピュータ１のＣＰＵ１１は、シナリオＢの処理Ｎの処理結果を受信する(ステップＳ９７)。そして、ＣＰＵ１１は、ステップＳ９７による処理結果を受信したことを条件に、コンピュータ２Ｂに対しシナリオＢの中断命令を送信する(ステップＳ９８)。コンピュータ２ＢのＣＰＵ２１は、ここで中断処理命令を受信する(ステップＳ９９)。これによりサーバコンピュータ１とコンピュータ２Ｂとの間のシナリオＢの進行が中断する。なお、サーバコンピュータ１は処理Ｎの処理結果を受信してから処理Ｎ＋１をコンピュータ２Ｂに送信する間にコンピュータ２Ａからエラー情報を受信した場合、待機することなく中断してもよい。また、コンピュータ２Ａ及びコンピュータ２Ｂ以外の図示しないコンピュータ２Ｃ、コンピュータ２Ｄ・・・が存在する場合、サーバコンピュータ１のＣＰＵ１１は中断処理命令を各コンピュータ２へ送信する。この場合、コンピュータ２Ｃに対応するシナリオＣ、コンピュータ２Ｄに対応するシナリオＤに基づく処理が中断する。
【００４０】
サーバコンピュータ１のＣＰＵ１１は、エラー情報に対する解消情報をエラーＤＢ１５１に登録する(ステップＳ１０１)。ＣＰＵ１１は、解消情報に基づき、シナリオファイル１５２に記憶したシナリオＡを更新する(ステップＳ１０２)。サーバコンピュータ１のＣＰＵ１１は、シナリオＡの処理Ｎ＋１を送信する(ステップＳ１０３)。コンピュータ２ＡのＣＰＵ２１は、処理Ｎ＋１を受信する(ステップＳ１０４)。ＣＰＵ２１は、処理Ｎ＋１を実行する(ステップＳ１０５)。
【００４１】
ＣＰＵ２１は、処理Ｎ＋１が成功したことを示す処理Ｎ＋１の処理結果をサーバコンピュータ１へ送信する(ステップＳ１０６)。サーバコンピュータ１のＣＰＵ１１は、シナリオＡの処理Ｎ＋１の処理結果を受信する(ステップＳ１０７)。ＣＰＵ１１は、シナリオＢの処理Ｎ＋１をコンピュータ２Ｂに送信する(ステップＳ１０８)。コンピュータ２ＢのＣＰＵ２１は、処理Ｎ＋１を受信する(ステップＳ１０９)。ＣＰＵ２１は、処理Ｎ＋１を実行する(ステップＳ１１１)。
【００４２】
ここで、シナリオＢの処理Ｎ＋１もエラーを有している。コンピュータ２ＢのＣＰＵ２１は、処理Ｎ＋１のエラー情報をサーバコンピュータ１へ送信する(ステップＳ１１２)。サーバコンピュータ１のＣＰＵ１１は、エラー情報を受信する(ステップＳ１１３)。ＣＰＵ１１は、エラー情報がエラーＤＢ１５１に登録されているか否か判断する。具体的にはＣＰＵ１１は、エラー情報に含まれるエラーＩＤまたはエラーメッセージが、エラーＤＢ１５１に既に登録されているか否かにより判断する。この例では既にエラー情報が登録されている。そのため、ＣＰＵ１１は、他のコンピュータ２（コンピュータ２Ａ、２Ｃ、２Ｄ等）を中断することなくエラー情報に対応する解消情報を、エラーＤＢ１５１を参照して読み出す(ステップＳ１１４)。
【００４３】
ＣＰＵ１１は、シナリオファイル１５２に記憶したシナリオＢを更新する(ステップＳ１１５)。ＣＰＵ１１は、シナリオＢの処理Ｎ＋１を送信する(ステップＳ１１６)。コンピュータ２ＢのＣＰＵ２１は、処理Ｎ＋１を受信する(ステップＳ１１７)。ＣＰＵ１１は、処理Ｎ＋１を実行する(ステップＳ１１８)。ＣＰＵ２１は、処理Ｎ＋１の処理結果をサーバコンピュータ１へ送信する(ステップＳ１１９)。ＣＰＵ１１は、処理Ｎ＋１の処理結果を受信する(ステップＳ１１１０)。これにより、他のコンピュータ２Ｂでの処理を終えてから中断処理が行われるため、一連の処理を効率よく処理することが可能となる。
【００４４】
本実施の形態２は以上の如きであり、その他は実施の形態１と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
【００４５】
実施の形態３
実施の形態３はエラー情報が登録されている場合は、他のコンピュータ２のシナリオに基づく処理を続行する形態に関する。図１２及び図１３はシナリオ処理の手順を示すフローチャートである。さらにシナリオＣを実行するコンピュータ２Ｃが存在するものとし、実施の形態２で述べたステップＳ１０８以降の処理を説明する。ＣＰＵ１１は、シナリオＢの処理Ｎ＋１をコンピュータ２Ｂに送信する(ステップＳ１２１)。コンピュータ２ＢのＣＰＵ２１は、処理Ｎ＋１を受信する(ステップＳ１２２)。ＣＰＵ２１は、処理Ｎ＋１を実行する(ステップＳ１２３)。
【００４６】
コンピュータ２ＢのＣＰＵ２１は、処理Ｎ＋１のエラー情報をサーバコンピュータ１へ送信する(ステップＳ１２４)。サーバコンピュータ１のＣＰＵ１１は、エラー情報を受信する(ステップＳ１２５)。ＣＰＵ１１は、エラー情報がエラーＤＢ１５１に登録されているか否か判断する。この例では既にエラー情報が登録されている。そのため、ＣＰＵ１１は、コンピュータ２Ｃを含む他のコンピュータ２を中断することなくエラー情報に対応する解消情報を、エラーＤＢ１５１を参照して読み出す(ステップＳ１２６)。
【００４７】
サーバコンピュータ１のＣＰＵ１１は、コンピュータ２ＣのシナリオＣを続行すべく、シナリオファイル１５２に記憶したシナリオＣの処理Ｎをコンピュータ２Ｃへ送信する(ステップＳ１２７)。コンピュータ２Ｃは、処理Ｎを受信する(ステップＳ１２８)。コンピュータ２Ｃは、処理Ｎを実行する(ステップＳ１２９)。コンピュータ２Ｃは処理Ｎの処理結果をサーバコンピュータ１へ送信する(ステップＳ１３１)。サーバコンピュータ１のＣＰＵ１１は、シナリオＣに係る処理Ｎの処理結果を受信する(ステップＳ１３２)。
【００４８】
ＣＰＵ１１は、シナリオファイル１５２に記憶したシナリオＢを更新する(ステップＳ１３３)。ＣＰＵ１１は、シナリオＢの処理Ｎ＋１を送信する(ステップＳ１３４)。コンピュータ２ＢのＣＰＵ２１は、処理Ｎ＋１を受信する(ステップＳ１３５)。ＣＰＵ１１は、処理Ｎ＋１を実行する(ステップＳ１３６)。ＣＰＵ２１は、処理Ｎ＋１の処理結果をサーバコンピュータ１へ送信する(ステップＳ１３７)。ＣＰＵ１１は、処理Ｎ＋１の処理結果を受信する(ステップＳ１３８)。以降、コンピュータ２Ｃに対するシナリオＣの処理Ｎ＋１が実行される。これにより、エラーが発生したとしても各シナリオを中断することなく作業を進めることが可能となる。
【００４９】
本実施の形態３は以上の如きであり、その他は実施の形態１及び２と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
【００５０】
実施の形態４
図１４は上述した形態のサーバコンピュータ１の機能ブロック図である。ＣＰＵ１１が制御プログラム１５Ｐを実行することにより、サーバコンピュータ１は以下のように動作する。取得部１４１は第１端末から第１シナリオに基づくエラー情報を取得する。判断部１４２は取得した前記エラー情報が登録されているか否かを判断する。中断部１４３は前記エラー情報が登録されていないと判断した場合に、前記第１端末とは異なる第２端末に係る第２シナリオに基づく処理を中断する。登録部１４４は前記エラー情報及び該エラー情報に対応するエラーを解消する解消情報を登録する。更新部１４５は前記解消情報に基づき前記第１シナリオを更新する。再開部１４６は前記第１シナリオを更新した後に、中断した第２シナリオに基づく処理を再開する。
【００５１】
図１５は実施の形態４に係るサーバコンピュータ１のハードウェア群を示すブロック図である。サーバコンピュータ１を動作させるためのプログラムは、ディスクドライブ、メモリーカードスロット等の読み取り部１０ＡにＣＤ−ＲＯＭ、ＤＶＤディスク、メモリーカード、またはＵＳＢメモリ等の可搬型記録媒体１Ａを読み取らせて記憶部１５に記憶しても良い。また当該プログラムを記憶したフラッシュメモリ等の半導体メモリ１Ｂをサーバコンピュータ１内に実装しても良い。さらに、当該プログラムは、インターネット等の通信網Ｎを介して接続される他のサーバコンピュータ（図示せず）からダウンロードすることも可能である。以下に、その内容を説明する。
【００５２】
図１５に示すサーバコンピュータ１は、上述した各種ソフトウェア処理を実行するプログラムを、可搬型記録媒体１Ａまたは半導体メモリ１Ｂから読み取り、或いは、通信網Ｎを介して他のサーバコンピュータ（図示せず）からダウンロードする。当該プログラムは、制御プログラム１５Ｐとしてインストールされ、ＲＡＭ１２にロードして実行される。これにより、上述したサーバコンピュータ１として機能する。
【００５３】
本実施の形態４は以上の如きであり、その他は実施の形態１から３と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。なお、以上述べた各実施形態は適宜組み合わせることが可能である。
【００５４】
以上の実施の形態１から４を含む実施形態に関し、さらに以下の付記を開示する。
（付記１）
第１端末から第１シナリオに基づくエラー情報を取得する取得部と、
取得した前記エラー情報が登録されているか否かを判断する判断部と、
前記エラー情報が登録されていないと判断した場合に、前記第１端末とは異なる第２端末に係る第２シナリオに基づく処理を中断する中断部と
を備える情報処理装置。
（付記２）
前記エラー情報に対応するエラーを解消する解消情報を登録する登録部と、
前記解消情報に基づき前記第１シナリオを更新する更新部と
を備える付記１に記載の情報処理装置。
（付記３）
前記第１シナリオを更新した後に、中断した第２シナリオに基づく処理を再開する再開部
を備える付記１または２に記載の情報処理装置。
（付記４）
前記中断部は、前記第２シナリオに基づく処理を第２端末に出力した場合、前記処理に対する処理結果を前記第２端末から取得した後に、該第２端末に係る第２シナリオに基づく処理を中断する
付記１から３のいずれか一つに記載の情報処理装置。
（付記５）
再開した前記第２端末から第２シナリオに基づくエラー情報を取得する取得部と、
前記エラー情報が登録されていると判断した場合に、前記解消情報に基づき前記第２シナリオを更新する第２シナリオ更新部と
を備える付記３または４に記載の情報処理装置。
（付記６）
前記エラー情報が登録されていると判断した場合、第１端末及び第２端末とは異なる第３端末に係る第３シナリオに基づく処理を続行する続行部
を備える付記５に記載の情報処理装置。
（付記７）
第１端末から第１シナリオに基づくエラー情報を取得し、
取得した前記エラー情報が登録されているか否かを判断し、
前記エラー情報が登録されていないと判断した場合に、前記第１端末とは異なる第２端末に係る第２シナリオに基づく処理を中断する
処理をコンピュータに実行させるプログラム。
（付記８）
第１端末から第１シナリオに基づくエラー情報を取得し、
取得した前記エラー情報が登録されているか否かを判断し、
前記エラー情報が登録されていないと判断した場合に、前記第１端末とは異なる第２端末に係る第２シナリオに基づく処理を中断する
処理をコンピュータに実行させる情報処理方法。
【符号の説明】
【００５５】
１      サーバコンピュータ（情報処理装置）
２      コンピュータ
１Ａ    可搬型記録媒体
１Ｂ    半導体メモリ
１０Ａ  読み取り部
１１    ＣＰＵ
１２    ＲＡＭ
１３    入力部
１４    表示部
１５    記憶部
１５Ｐ  制御プログラム
１６    通信部
１８    時計部
２１    ＣＰＵ
２２    ＲＡＭ
２３    入力部
２４    表示部
２５    記憶部
２５Ｐ  制御プログラム
２６    通信部
２８    時計部
１５１  エラーＤＢ
１５２  シナリオファイル
Ｎ      通信網
【図１】
2019113961.tif 000003
【図２】
2019113961.tif 000004
【図３】
2019113961.tif 000005
【図４】
2019113961.tif 000006
【図５】
2019113961.tif 000007
【図６】
2019113961.tif 000008
【図７】
2019113961.tif 000009
【図８】
2019113961.tif 000010
【図９】
2019113961.tif 000011
【図１０】
2019113961.tif 000012
【図１１】
2019113961.tif 000013
【図１２】
2019113961.tif 000014
【図１３】
2019113961.tif 000015
【図１４】
2019113961.tif 000016
【図１５】
2019113961.tif 000017