(57)【要約】【課題】  ネットワークシステムのソフトウェア更新やコンフィグレーション変更を行う際のソフトウェア検証において、クライアントの多様性に起因する検証条件の精度を高める。【解決手段】  クライアントからのメッセージを処理して応答するネットワークシステムにおいて、現行ソフトウェアとは別に検証対象ソフトウェアを平行して動作させ動作結果を記録するソフトウェア稼働装置２、クライアントから受信するメッセージを現行ソフトウェアと検証ソフトウェアに複製もしくは振り分けて転送するメッセージ中継装置３、ソフトウェア稼働装置２およびメッセージ中継装置３の動作を監視制御する監視制御装置４を具備し、監視制御装置４にて現行ソフトウェアと検証対象ソフトウェアの動作結果から検証対象ソフトウェアの正常性を判断する。【選択図】  図１
2015114952.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークシステムであって、
ソフトウェア稼働装置と、
メッセージ中継装置と、
前記ソフトウェア稼働装置および前記メッセージ中継装置の動作を監視制御する監視制御装置と
を備え、
前記監視制御装置は、複製方式か振り分け方式かの指定を行う検証方式情報を保持し、前記検証方式情報を前記メッセージ中継装置が保持する中継設定情報として設定し、
前記監視制御装置は、前記メッセージ中継装置が保持する、現行ソフトウェアを予め記憶した転送先情報に、検証対象ソフトウェアを追加し、
前記監視制御装置は、予め定められた振り分け条件情報を、前記メッセージ中継装置が保持する振り分け設定情報として設定し、
前記メッセージ中継装置は、中継設定情報に従い複製して、または、中継設定情報および振り分け設定情報に従い振り分けて、クライアントから受信したメッセージを転送先情報に基づき前記現行ソフトウェアおよび／または前記検証ソフトウェアに転送し、
前記監視制御装置は、自身の保持している検証対象ソフトウェアを、前記ソフトウェア稼働装置に配置し、前記ソフトウェア稼働装置に対して検証対象ソフトウェアの起動を指示し、
前記ソフトウェア稼働装置は、現行ソフトウェアと検証対象ソフトウェアを並行して動作させ、各動作結果を記録し、
前記監視制御装置は、正常性を判別するための動作結果毎の判定条件情報を一つまたは複数保持し、前記判定条件情報に基づき、現行ソフトウェアと検証対象ソフトウェアの動作結果から検証対象ソフトウェアの正常性を判断して検証結果を求め、
前記監視制御装置は、検証結果をメモリに保存し、および／または、保守端末に検証結果を表示させる
ことを特徴とするネットワークシステム。
【請求項２】
請求項１に記載のネットワークシステムにおいて、
前記メッセージ中継装置は、中継設定情報として複製方式が指定された場合、クライアントから受信したメッセージを複製して現行ソフトウェアと検証対象ソフトウェアの両方に転送し、現行ソフトウェアからの応答メッセージをクライアントへ送信し、検証対象ソフトウェアからの応答メッセージをクライアントへ送信しないことを特徴とするネットワークシステム。
【請求項３】
請求項１に記載のネットワークシステムにおいて、
前記メッセージ中継装置は、
受信メッセージの抽出条件に対応する転送先を含む前記振り分け設定情報を保持し、
中継設定情報として振り分け方式が指定された場合、前記振り分け設定情報を参照して、受信メッセージの抽出条件に基づき求めた、転送先の現行ソフトウェアまたは検証対象ソフトウェアのいずれかに対して受信したメッセージを振り分けて転送することを特徴とするネットワークシステム。
【請求項４】
請求項３に記載のネットワークシステムにおいて、
前記抽出条件は、受信するメッセージに含まれるクライアントのアドレス若しくは他の識別情報、または種類情報であることを特徴とするネットワークシステム。
【請求項５】
請求項１に記載のネットワークシステムにおいて、
前記メッセージ中継装置は、
振り分け比率に対応する転送先を含む前記振り分け設定情報を保持し、
中継設定情報として振り分け方式が指定された場合、前記振り分け設定情報を参照して、振り分け比率に従い、現行ソフトウェアまたは検証対象ソフトウェアに対して受信したメッセージを転送する
ことを特徴とするネットワークシステム。
【請求項６】
請求項１に記載のネットワークシステムにおいて、
前記監視制御装置は、
検証方式情報、振り分け条件情報、ひとつまたは複数の判定条件情報を含む検証パラメータを複数保持し、
全てのまたは予め定められたひとつまたは複数の検証パラメータで定められる条件で、ソフトウェア検証の正常性判断を行う
ことを特徴とするネットワークシステム。
【請求項７】
請求項１に記載のネットワークシステムにおいて、
前記監視制御装置は、検証対象ソフトウェアの正常性を判断した結果として異常なしと判断した場合、前記メッセージ中継装置の振り分け方法を変更して、検証対象ソフトウェアに入力するメッセージを増加させることを特徴とするネットワークシステム。
【請求項８】
請求項１に記載のネットワークシステムにおいて、
前記監視制御装置は、検証対象ソフトウェアの正常性を判断した結果として異常ありと判断した場合、前記メッセージ中継装置の振り分け方法を変更して、クライアントからのメッセージを全て現行ソフトウェアに入力して、検証対象ソフトウェアの正常性を中止することを特徴とするネットワークシステム。
【請求項９】
請求項１に記載のネットワークシステムにおいて、
前記ソフトウェア稼働装置は、現行ソフトウェアおよび検証対象ソフトウェアにより、サービス提供に影響する異常が発生したことを検知して前記監視制御装置にアラーム通知を行い、
前記監視制御装置は、前記判定条件情報として、アラーム通知を使用することが指定される場合、予め定められた検証期間に検証対象ソフトウェアからアラーム通知を受信したら、検証ソフトウェアの正常性を判断する動作結果として前記アラーム通知を記録または保守端末に表示させることを特徴とするネットワークシステム。
【請求項１０】
請求項１に記載のネットワークシステムにおいて、
前記ソフトウェア稼働装置は、現行ソフトウェアおよび検証対象ソフトウェアにより、提供するネットワークサービスの統計情報を記録し、
前記監視制御装置は、前記判定条件情報として、統計情報を使用することが指定されている場合、検証ソフトウェアが正常性を判断する動作結果として前記統計情報を記録または保守端末に表示させることを特徴とするネットワークシステム。
【請求項１１】
請求項１に記載のネットワークシステムにおいて、
前記ソフトウェア稼働装置は、現行ソフトウェアおよび検証対象ソフトウェアにより、クライアントへの応答メッセージのログ情報を記録し、
前記監視制御装置は、前記判定条件情報として、ログ情報を使用することが指定されている場合、検証ソフトウェアが正常性を判断する動作結果として前記応答メッセージのログ情報を記録または保守端末に表示させることを特徴とするネットワークシステム。
【請求項１２】
請求項１に記載のネットワークシステムにおいて、
前記ソフトウェア稼働装置は、現行ソフトウェアおよび検証対象ソフトウェアにより、プログラムの動作ログ情報を記録し、
前記監視制御装置は、前記判定条件情報として、プログラムの動作ログ情報を使用することが指定されている場合、検証ソフトウェアが正常性を判断する動作結果として前記プログラムの動作ログ情報を記録または保守端末に表示させることを特徴とするネットワークシステム。
【請求項１３】
請求項１に記載のネットワークシステムにおいて、
前記監視制御装置は、
検証の成功時または失敗時の動作をそれぞれ指定する後処理情報を保持し、
前記検証結果と前記後処理情報に基づき、検証対象ソフトウェアの停止を実行するのか否かを判断し、検証対象ソフトウェアの停止を行うと判断した場合、前記メッセージ中継装置に対して転送先情報から検証対象ソフトウェアを削除してソフトウェア検証の開始前の状態に戻し、前記ソフトウェア稼働装置に対して検証対象ソフトウェアのプログラムの停止を指示する
ことを特徴とするネットワークシステム。
【請求項１４】
ネットワークシステムにおける監視制御装置であって、
前記ネットワークシステムは、
ソフトウェア稼働装置と、
メッセージ中継装置と、
前記ソフトウェア稼働装置および前記メッセージ中継装置の動作を監視制御する監視制御装置と
を備え、
前記監視制御装置は、
複製方式か振り分け方式かの指定を行う検証方式情報を保持し、前記検証方式情報を前記メッセージ中継装置が保持する中継設定情報として設定し、
前記メッセージ中継装置が保持する、現行ソフトウェアを予め記憶した転送先情報に、検証対象ソフトウェアを追加し、
予め定められた振り分け条件情報を、前記メッセージ中継装置が保持する振り分け設定情報として設定し、
前記メッセージ中継装置により、中継設定情報に従い複製して、または、中継設定情報および振り分け設定情報に従い振り分けて、クライアントから受信したメッセージを転送先情報に基づき前記現行ソフトウェアおよび／または前記検証ソフトウェアに転送させ、
自身の保持している検証対象ソフトウェアを、前記ソフトウェア稼働装置に配置し、前記ソフトウェア稼働装置に対して検証対象ソフトウェアの起動を指示し、
前記ソフトウェア稼働装置により、現行ソフトウェアと検証対象ソフトウェアを並行して動作させ、各動作結果を記録させ、
正常性を判別するための動作結果毎の判定条件情報を一つまたは複数保持し、前記判定条件情報に基づき、現行ソフトウェアと検証対象ソフトウェアの動作結果から検証対象ソフトウェアの正常性を判断して検証結果を求め、
検証結果をメモリに保存し、および／または、保守端末に検証結果を表示させる
ことを特徴とする監視制御装置。
【請求項１５】
ネットワークシステムにおけるソフトウェア検証方法であって、
前記ネットワークシステムは、
ソフトウェア稼働装置と、
メッセージ中継装置と、
前記ソフトウェア稼働装置および前記メッセージ中継装置の動作を監視制御する監視制御装置と
を備え、
前記監視制御装置は、複製方式か振り分け方式かの指定を行う検証方式情報を保持し、前記検証方式情報を前記メッセージ中継装置が保持する中継設定情報として設定し、
前記監視制御装置は、前記メッセージ中継装置が保持する、現行ソフトウェアを予め記憶した転送先情報に、検証対象ソフトウェアを追加し、
前記監視制御装置は、予め定められた振り分け条件情報を、前記メッセージ中継装置が保持する振り分け設定情報として設定し、
前記メッセージ中継装置は、中継設定情報に従い複製して、または、中継設定情報および振り分け設定情報に従い振り分けて、クライアントから受信したメッセージを転送先情報に基づき前記現行ソフトウェアおよび／または前記検証ソフトウェアに転送し、
前記監視制御装置は、自身の保持している検証対象ソフトウェアを、前記ソフトウェア稼働装置に配置し、前記ソフトウェア稼働装置に対して検証対象ソフトウェアの起動を指示し、
前記ソフトウェア稼働装置は、現行ソフトウェアと検証対象ソフトウェアを並行して動作させ、各動作結果を記録し、
前記監視制御装置は、正常性を判別するための動作結果毎の判定条件情報を一つまたは複数保持し、前記判定条件情報に基づき、現行ソフトウェアと検証対象ソフトウェアの動作結果から検証対象ソフトウェアの正常性を判断して検証結果を求め、
前記監視制御装置は、検証結果をメモリに保存し、および／または、保守端末に検証結果を表示させる
ことを特徴とするソフトウェア検証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークシステム、監視制御装置、およびネットワークシステムのソフトウェア検証方法に関する。
【背景技術】
【０００２】
今日、インターネットプロトコルを用いる多くのネットワークまたは通信システムが存在する。特に、移動端末がインターネット網を利用して何らかのサービス提供を受けることを可能にするネットワークシステムが広く運用されている。そのため重要な社会基盤として使用されているネットワークでは、高い信頼性が求められており、サービス機能の追加ためにソフトウェア更新やコンフィグレーション変更を行う際には、それまでに提供している既存サービスに影響を与えることなく新規サービスの追加を行うことが望まれている。
【０００３】
このように既存サービスに影響を与えないようにソフトウェア更新を行う方法については、例えば特許文献１に開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平７−１７７５４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
更新対象となるソフトウェアやコンフィグレーション自体に、障害、エラー、バグ等の異常がある場合、更新後のネットワークシステムで異常が発生してしまう場合があるため、そのような状態でのソフトウェア更新を行うこと自体を避けるべきものと想定される。そのため、ネットワークシステムのソフトウェア更新やコンフィグレーション変更を行う場合、事前にサービス中の本番環境とは異なる検証環境を使用して、ソフトウェア更新による異常が発生しないことを検証しておく必要がある。この場合、検証環境は本番環境にできるだけ近い条件で検証を行うことが望ましい。
【０００６】
しかしながら、特許文献１には、運用系および予備系の２重化冗長構成を有して電話系の交換サービスを行う交換システムのファイル更新処理を行うファイル更新処理方式において、ソフトウェアファイル更新時に、旧ファイル上で運転している運用系においては現在処理中の呼サービスが全て終了するまで処理を継続し、かつ新ファイル上で運転される予備系においては新しい呼サービスに対しての処理を開始することによって、全ての呼サービスを中断するフェーズ再開を伴うことなくソフトウェアファイル更新するという、サービスの連続性を確保する技術は開示されているものの、新ファイル導入／切り替え前に本番環境と同じ環境で検証することについてはふれられていない。
【０００７】
そして、特に大規模ネットワークシステムでは、検証環境に対して本番環境と同じネットワーク構成を用意することは、通常難しい。特に、クライアントから入力されるデータトラフィックについては、例えば携帯電話サービスの携帯端末やアプリケーションに多様性があるように、検証環境で全ての種類のクライアントを用意することは実質的に一般に困難であると考えられるため、検証条件として全てのクライアントの種類に起因する検証条件を準備することも困難となっていると想定される。従って、従来、検証環境では試験者が予期できる範囲でクライアントの挙動を考慮して作成された検証条件で検証を行うこととなる。
【０００８】
このように、試験者が予期できる範囲で作成された検証条件での検証となるため、試験者の予想外の使われ方をするクライアントが存在した場合、ソフトウェア検証が十分に行われていないため、予期せぬ異常が発生する場合が想定される。
【０００９】
以上のことから、本発明は、ネットワークシステムのソフトウェア更新やコンフィグレーション変更等を行う際のソフトウェア検証において、クライアントの多様性に起因する検証条件の精度を高めることを目的とする。
【課題を解決するための手段】
【００１０】
本発明の第１の解決手段によると、
ネットワークシステムであって、
ソフトウェア稼働装置と、
メッセージ中継装置と、
前記ソフトウェア稼働装置および前記メッセージ中継装置の動作を監視制御する監視制御装置と
を備え、
前記監視制御装置は、複製方式か振り分け方式かの指定を行う検証方式情報を保持し、前記検証方式情報を前記メッセージ中継装置が保持する中継設定情報として設定し、
前記監視制御装置は、前記メッセージ中継装置が保持する、現行ソフトウェアを予め記憶した転送先情報に、検証対象ソフトウェアを追加し、
前記監視制御装置は、予め定められた振り分け条件情報を、前記メッセージ中継装置が保持する振り分け設定情報として設定し、
前記メッセージ中継装置は、中継設定情報に従い複製して、または、中継設定情報および振り分け設定情報に従い振り分けて、クライアントから受信したメッセージを転送先情報に基づき前記現行ソフトウェアおよび／または前記検証ソフトウェアに転送し、
前記監視制御装置は、自身の保持している検証対象ソフトウェアを、前記ソフトウェア稼働装置に配置し、前記ソフトウェア稼働装置に対して検証対象ソフトウェアの起動を指示し、
前記ソフトウェア稼働装置は、現行ソフトウェアと検証対象ソフトウェアを並行して動作させ、各動作結果を記録し、
前記監視制御装置は、正常性を判別するための動作結果毎の判定条件情報を一つまたは複数保持し、前記判定条件情報に基づき、現行ソフトウェアと検証対象ソフトウェアの動作結果から検証対象ソフトウェアの正常性を判断して検証結果を求め、
前記監視制御装置は、検証結果をメモリに保存し、および／または、保守端末に検証結果を表示させる
ことを特徴とするネットワークシステムが提供される。
【００１１】
本発明の第２の解決手段によると、
ネットワークシステムにおける監視制御装置であって、
前記ネットワークシステムは、
ソフトウェア稼働装置と、
メッセージ中継装置と、
前記ソフトウェア稼働装置および前記メッセージ中継装置の動作を監視制御する監視制御装置と
を備え、
前記監視制御装置は、
複製方式か振り分け方式かの指定を行う検証方式情報を保持し、前記検証方式情報を前記メッセージ中継装置が保持する中継設定情報として設定し、
前記メッセージ中継装置が保持する、現行ソフトウェアを予め記憶した転送先情報に、検証対象ソフトウェアを追加し、
予め定められた振り分け条件情報を、前記メッセージ中継装置が保持する振り分け設定情報として設定し、
前記メッセージ中継装置により、中継設定情報に従い複製して、または、中継設定情報および振り分け設定情報に従い振り分けて、クライアントから受信したメッセージを転送先情報に基づき前記現行ソフトウェアおよび／または前記検証ソフトウェアに転送させ、
自身の保持している検証対象ソフトウェアを、前記ソフトウェア稼働装置に配置し、前記ソフトウェア稼働装置に対して検証対象ソフトウェアの起動を指示し、
前記ソフトウェア稼働装置により、現行ソフトウェアと検証対象ソフトウェアを並行して動作させ、各動作結果を記録させ、
正常性を判別するための動作結果毎の判定条件情報を一つまたは複数保持し、前記判定条件情報に基づき、現行ソフトウェアと検証対象ソフトウェアの動作結果から検証対象ソフトウェアの正常性を判断して検証結果を求め、
検証結果をメモリに保存し、および／または、保守端末に検証結果を表示させる
ことを特徴とする監視制御装置が提供される。
【００１２】
本発明の第３の解決手段によると、
ネットワークシステムにおけるソフトウェア検証方法であって、
前記ネットワークシステムは、
ソフトウェア稼働装置と、
メッセージ中継装置と、
前記ソフトウェア稼働装置および前記メッセージ中継装置の動作を監視制御する監視制御装置と
を備え、
前記監視制御装置は、複製方式か振り分け方式かの指定を行う検証方式情報を保持し、前記検証方式情報を前記メッセージ中継装置が保持する中継設定情報として設定し、
前記監視制御装置は、前記メッセージ中継装置が保持する、現行ソフトウェアを予め記憶した転送先情報に、検証対象ソフトウェアを追加し、
前記監視制御装置は、予め定められた振り分け条件情報を、前記メッセージ中継装置が保持する振り分け設定情報として設定し、
前記メッセージ中継装置は、中継設定情報に従い複製して、または、中継設定情報および振り分け設定情報に従い振り分けて、クライアントから受信したメッセージを転送先情報に基づき前記現行ソフトウェアおよび／または前記検証ソフトウェアに転送し、
前記監視制御装置は、自身の保持している検証対象ソフトウェアを、前記ソフトウェア稼働装置に配置し、前記ソフトウェア稼働装置に対して検証対象ソフトウェアの起動を指示し、
前記ソフトウェア稼働装置は、現行ソフトウェアと検証対象ソフトウェアを並行して動作させ、各動作結果を記録し、
前記監視制御装置は、正常性を判別するための動作結果毎の判定条件情報を一つまたは複数保持し、前記判定条件情報に基づき、現行ソフトウェアと検証対象ソフトウェアの動作結果から検証対象ソフトウェアの正常性を判断して検証結果を求め、
前記監視制御装置は、検証結果をメモリに保存し、および／または、保守端末に検証結果を表示させる
ことを特徴とするソフトウェア検証方法が提供される。
【発明の効果】
【００１３】
本発明によると、ネットワークシステムのソフトウェア更新やコンフィグレーション変更等を行う際のソフトウェア検証において、クライアントの多様性に起因する検証条件の精度を高めることができる。
【図面の簡単な説明】
【００１４】
【図１】本実施の形態のネットワークシステムの構成を例示した図。
【図２】ソフトウェア稼働装置の構成を例示した図（その１）。
【図３】ソフトウェア稼働装置の構成を例示した図（その２）。
【図４】メッセージ中継装置の構成を例示した図。
【図５】メッセージ中継機能が保有する転送先情報を例示した図。
【図６】メッセージ中継機能が保有する振り分け設定情報を例示した図。
【図７】中継設定情報として複製方式が指定された場合のメッセージ中継装置の動作を例示した図。
【図８】中継設定情報として振り分け方式が指定された場合のメッセージ中継装置の動作を例示した図。
【図９】監視制御装置の構成を例示した図。
【図１０】検証判定情報の構成を例示した図。
【図１１】ソフトウェア検証の動作フローを例示した図。
【図１２】検証ソフトウェアの起動処理の動作フローを例示した図。
【図１３】検証シーケンスの実行処理の動作フローを例示した図。
【図１４】ソフトウェア検証の後処理の動作フローを例示した図。
【発明を実施するための形態】
【００１５】
以下、本発明を実施するための形態におけるネットワークシステムおよびソフトウェア検証方法を説明する。
【００１６】
（概要）
本実施の形態では、例えば、クライアントからのメッセージを処理して応答するネットワークシステムにおいて、クライアントに現行サービスを提供しているソフトウェア（以下、現行ソフトウェア）とは別に検証対象となるソフトウェア（以下、検証対象ソフトウェア）を平行して動作させ動作結果を記録するソフトウェア稼働手段、クライアントから受信するメッセージを現行ソフトウェアと検証ソフトウェアに複製もしくは振り分けて転送するメッセージ中継手段、前記ソフトウェア稼働手段およびメッセージ中継手段の動作を監視制御する監視制御手段を具備し、前記監視制御手段にて現行ソフトウェアと検証対象ソフトウェアの動作結果から検証対象ソフトウェアの正常性を判断する。
なお、本実施の形態では、メッセージ中継手段がメッセージを中継する方法として、クライアントから受信したメッセージを複製して現行ソフトウェアと検証対象ソフトウェアの両方に転送する場合、検証対象ソフトウェアからクライアントへの応答メッセージを前記メッセージ中継手段にてフィルタリングしてクライアントへ送信しないようにする。
【００１７】
(システム構成)
最初に、ネットワークシステムと外部との関係について説明する。
図１は、本実施の形態のネットワークシステムの構成を例示した図である。
図１に示すように、ネットワークシステム１は、外部データ網７２によってクライアント６と接続し、保守網７１によって保守端末５と接続する。ユーザや対向装置となるクライアント６は、ネットワークシステム１が提供するネットワークサービスを外部データ網７２越しに利用する。ネットワークシステム１の保守者は、保守端末５を使用してネットワークシステム１に対してネットワークサービスを提供するソフトウェア検証を行う。
保守網７１、外部データ網７２は、例えば、ＬＡＮ（Local  Area  Network）またはＩＰ（Internet  Protocol）網等の適宜のネットワークである。
【００１８】
次に、ネットワークシステム１の内部構成について説明する。
ネットワークシステム１は、ソフトウェア稼働装置２、メッセージ中継装置３、監視制御装置４を備える。
また、ソフトウェア稼働装置２、メッセージ中継装置３、監視制御装置４を接続する管理網７３、内部データ網７４は、ＬＡＮ（Local  Area  Network）またはＩＰ（Internet  Protocol）網等の適宜のネットワークである。
【００１９】
(ソフトウェア稼働装置の構成)
次に、ソフトウェア稼働装置２の構成を説明する。
図２は、ソフトウェア稼働装置の構成を例示した図（その１）である。
図２に示すように、ソフトウェア稼働装置２は、ネットワークサービスを提供するソフトウェアが動作する。ソフトウェア稼働装置２は、ソフトウェアのプログラムを動作させることのできるプログラム実行環境２０１を複数持ち（図２の例ではプログラム実行環境２０１Ａ、２０１Ｂの２つとして示す）、現行ソフトウェア２１と検証対象ソフトウェア２２の複数（図２の例では２つ）のソフトウェアを平行して動作させることができる。ここでいうプログラム実行環境２０１は、ＣＰＵ２１１、メモリ２１２、記憶部２１３、通信インタフェース２１４等を備えるコンピュータにより実現される。なお、ここでいうコンピュータは物理的なものでも、仮想化技術を用いた仮想的なものでもよい。
【００２０】
プログラム実行環境２０１は、通信インタフェース２１４を使用して管理網７３および内部データ網７４と接続する。
【００２１】
ソフトウェアを動作させる場合、監視制御装置４からプログラム実行環境２０１のメモリ２１２にソフトウェアのプログラム２１８を配置し、監視制御装置４からプログラム実行環境２０１のＣＰＵ２１１に対してプログラム２１８の実行を指示することで、ソフトウェアが動作を開始する。
【００２２】
また、ソフトウェアの動作を停止させる場合、監視制御装置４からプログラム実行環境２０１のＣＰＵ２１１に対してプログラム２１８の停止を指示することで、ソフトウェアの動作を停止する。
【００２３】
ソフトウェア（ＣＰＵ２１１）は、クライアント６からの要求メッセージを、内部データ網７４経由で通信インタフェース２１４を介して受信する。そして要求メッセージに対する処理を行い、クライアント６への応答メッセージを、通信インタフェース２１４を介して内部データ網７４経由で送信する。ここでいう要求メッセージは、コネクション確立要求や、リソース割り当て要求、セッション解放要求などのネットワークサービスに対する要求メッセージである。また、要求メッセージに対する応答メッセージは、コネクション確立応答や、リソース割り当て応答、セッション解放応答などである。
【００２４】
動作中のソフトウェア（ＣＰＵ２１１）はサービス提供に影響する、障害、エラー、バグ等の異常が発生した場合、管理網７３を介して監視制御装置４にアラーム通知を行う。また、ソフトウェア（ＣＰＵ２１１）は、メッセージ処理件数、メッセージ処理成功数、メッセージ処理成功率などの統計情報２１５を集計し、プログラム実行環境２０１の記憶部２１３に保存する。また、ソフトウェア（ＣＰＵ２１１）は、クライアントから受信したメッセージの内容、およびクライアントへ応答したメッセージの内容であるメッセージログ２１６を、プログラム実行環境２０１の記憶部２１３に保存する。また、ソフトウェア（ＣＰＵ２１１）は、プログラムでエラー等のログが発生したことを記録しておくプログラムログ２１７を出力し、プログラム実行環境２０１の記憶部２１３に保存する。
【００２５】
プログラム実行環境２０１の記憶部２１３に保存された、統計情報２１５、メッセージログ２１６、プログラムログ２１７は、ソフトウェア検証の内容に合わせて、監視制御装置４が収集を行う。
【００２６】
図３は、ソフトウェア稼働装置の構成を例示した図（その２）である。
なお、以降の説明において、プログラム実行環境２０１およびプログラム実行環境２０１の内部要素２１１〜２１８について、現行ソフトウェア２１と検証対象ソフトウェア２２を区別する必要がある場合、図３に示すように、現行ソフトウェア２１のプログラム実行環境を参照番号２０１Ａ、およびその内部要素を参照番号２１１Ａ〜２１８Ａ、検証対象ソフトウェア２２のプログラム実行環境を参照番号２０１Ｂ、およびその内部要素を２１１Ｂ〜２１８Ｂとして表現する。
【００２７】
(メッセージ中継装置の構成)
次に、メッセージ中継装置３の構成を説明する。
図４は、メッセージ中継装置の構成を例示した図である。
図４に示すように、メッセージ中継装置３は、外部データ網７２と内部データ網７４の間に存在し、クライアント６と現行ソフトウェア２１および検証対象ソフトウェア２２の送受信するメッセージを中継する。メッセージ中継装置３は、例えば、クライアント６に対してネットワークサービスの仮想サーバとして動作する。仮想サーバとしてクライアント６から受信した要求メッセージをネットワークサービスのリアルサーバとなる現行ソフトウェア２１および検証対象ソフトウェア２２に転送する。
【００２８】
メッセージ中継装置３は、ＣＰＵ３１１、メモリ３１２、記憶部３１３、通信インタフェース３１４等を備えるコンピュータにより実現される。なお、ここでいうコンピュータは物理的なものでも、仮想化技術を用いた仮想的なものでもよい。
メッセージ中継装置３は、通信インタフェース３１４を使用して管理網７３、外部データ網７２、内部データ網７４と接続する。
【００２９】
図５は、メッセージ中継機能が保有する転送先情報を例示した図である。
メッセージ中継装置３は、メッセージの転送先となるソフトウェア稼働装置２で動作しているソフトウェアの情報を転送先情報３１として保持する。転送先情報３１には、ソフトウェアがメッセージを受信する際に使用する転送先アドレス３１０１、現行ソフトウェアか検証対象ソフトウェアを区別する転送先ソフトウェア種別３１０２が含まれる。（図５）
【００３０】
ソフトウェア検証が行われていない状態では、転送先情報３１には、予め現行ソフトウェア２１に関する情報のみ存在する。（図５（a））
転送先情報３１は、ソフトウェア検証を行なう際にソフトウェア稼働装置２の動作に合わせて、監視制御装置４から検証対象ソフトウェア２２に関する情報の追加が行われる。（図５（b））
また、ソフトウェア検証を終了する際に、監視制御装置４から検証対象ソフトウェア２２に関する情報の削除が行われる。
【００３１】
メッセージ中継装置３は、メッセージ中継動作の方法を指定する中継設定情報３２を保持する。中継設定情報３２は、メッセージ中継装置３が実行するメッセージ中継動作として、クライアント６から受信したメッセージを複製して現行ソフトウェア２１と検証対象ソフトウェア２２の両方に転送する複製方式、クライアント６から受信したメッセージを現行ソフトウェア２１と検証対象ソフトウェア２２のいずれかに振り分けて転送する振り分け方式、のいずれかの方式で動作するか指定する。
【００３２】
中継設定情報３２は、ソフトウェア検証の内容に合わせて、監視制御装置４から設定を行う。
【００３３】
メッセージ中継装置３は、中継設定情報３２で振り分け方式が指定されている場合、振り分け条件を管理する振り分け設定情報３３を保持する。
【００３４】
図６は、メッセージ中継機能が保有する振り分け設定情報を例示した図である。
振り分け設定情報３３は、ソフトウェア検証の内容に合わせて、監視制御装置４から設定を行う。
【００３５】
メッセージ振り分け方法として、受信するメッセージに含まれる情報を使用する場合、振り分け設定情報３３は、受信メッセージからの抽出条件３３０１と、抽出条件３３０１に対応する転送先アドレス３３０２が含まれる。受信メッセージからの抽出条件３３０１としては、例えば、クライアントのアドレス等の識別情報や、クライアントの種類情報などを指定する。（図６（a））
【００３６】
メッセージ振り分け方法として、指定した比率で振り分けを行う場合、振り分け設定情報３３には、振り分け比率３３１１と、振り分け比率３３１１に対応する転送先アドレス情報３３１２が含まれる。（図６（ｂ））
【００３７】
(メッセージ中継装置の複製方式の動作)
図７は、中継設定情報として複製方式が指定された場合のメッセージ中継装置の動作を例示した図である。
次に、中継設定情報３２として複製方式が指定された場合のメッセージ中継装置３の動作を説明する。
【００３８】
クライアント６から要求メッセージ９０１０を受信したメッセージ中継装置３は、複製処理３０１を行う。メッセージ中継装置３は、複製処理３０１では、転送先情報３１を参照して現行ソフトウェア２１と検証対象ソフトウェア２２の両方の転送先アドレス３１０１を取得し、取得した転送先アドレス３１０１に対して、それぞれ複製した要求メッセージ９０１１と要求メッセージ９０１２の送信を行う。
【００３９】
現行ソフトウェア２１では、メッセージ中継装置３は、受信した要求メッセージ９０１１に対して処理を行った後、クライアント６への応答メッセージ９０２１をメッセージ中継装置３に向けて送信する。また、検証対象ソフトウェア２２でも、メッセージ中継装置３は、受信した要求メッセージ９０１２に対して処理を行った後、クライアント６への応答メッセージ９０２２をメッセージ中継装置３に向けて送信する。
【００４０】
現行ソフトウェア２１および検証対象ソフトウェア２２から応答メッセージを受信したメッセージ中継装置３は、フィルタリング処理３０２を行う。フィルタリング処理３０２では、メッセージ中継装置３は、応答メッセージに含まれる送信元情報を転送先情報３１の転送先アドレス３１０１と照らし合わせて、現行ソフトウェア２１からの応答メッセージであったならば、メッセージ中継装置３は、クライアント６に対して応答メッセージ９０２０の送信を行う。一方、検証対象ソフトウェア２２からの応答メッセージであったならば、クライアント６に対して応答メッセージを送信しない。図７の場合、メッセージ中継装置３は、現行ソフトウェア２１からの応答メッセージ９０２１は対しては、クライアント６へ応答メッセージ９０２０を送信し、検証対象ソフトウェア２２からの応答メッセージ９０２２に対しては、クライアント６への応答メッセージを送信しない。
【００４１】
なお、検証対象ソフトウェア２２が動作していない状況の複製処理３０１では、メッセージ中継装置３は、転送先情報３１に検証対象ソフトウェア２２に関する情報が存在しないため、現行ソフトウェア２１にのみメッセージを転送する。
【００４２】
(メッセージ中継装置の振り分け方式の動作)
図８は、中継設定情報として振り分け方式が指定された場合のメッセージ中継装置の動作を例示した図である。
次に、中継設定情報３２として振り分け方式が指定された場合のメッセージ中継装置３の動作を説明する。
【００４３】
クライアント６から要求メッセージ９１１０を受信したメッセージ中継装置３は、振り分け処理３０３を行う。振り分け処理３０３では、メッセージ中継装置３は、転送先情報３１を参照して検証対象ソフトウェア２２に関する情報が存在するか確認する。その情報が存在するとき、メッセージ中継装置３は、振り分け設定情報３３の内容に従い、受信するメッセージに含まれる情報をもとに振り分けを行う場合は、受信メッセージからの抽出条件３３０１に従い受信したメッセージの振り分け先となる転送先アドレス３３０２を選択し、一方、比率で振り分けを行う場合は、振り分け比率３３１１に従い転送先アドレス３３１２を選択し、選択された転送先アドレス３３０２もしくは転送先アドレス３３１２に対して、要求メッセージ９１１１の送信を行う。
【００４４】
現行ソフトウェア２１および検証対象ソフトウェア２２では、メッセージ中継装置３は、受信したメッセージに対して処理を行った後、クライアント６への応答メッセージをメッセージ中継装置３に向けて送信する。図８の場合、メッセージ中継装置３は、クライアント６Ａから送信される要求メッセージ９１１０に対しては、振り分け処理３０３で現行ソフトウェア２１を選択し、要求メッセージ９１１１を現行ソフトウェア２１に対して送信している。また、メッセージ中継装置３は、クライアント６Ｂから送信される要求メッセージ９２１０に対しては、振り分け処理３０３で検証対象ソフトウェア２２を選択し、要求メッセージ９２１１を検証対象ソフトウェア２２に対して送信している。
【００４５】
現行ソフトウェア２１および検証対象ソフトウェア２２から応答メッセージを受信したメッセージ中継装置３は、クライアント６に対して応答メッセージ９１２０、９２２０の送信を行う。
【００４６】
なお、検証対象ソフトウェア２２が動作していない状況の振り分け処理３０３は、転送先情報３１に検証対象ソフトウェア２２に関する情報が存在しないため、現行ソフトウェア２１にのみメッセージを転送する。
【００４７】
(監視制御装置の構成)
次に、監視制御装置４の構成について説明する。
図９は、監視制御装置の構成を例示した図である。
図９に示すように、監視制御装置４は、保守端末５に対してソフトウェア検証操作のインタフェースを提供し、ソフトウェア稼働装置２およびメッセージ中継装置３に対して監視制御を行うことで、ソフトウェア検証の実行制御を行う。また、ソフトウェア検証の実行制御の中で、ソフトウェア検証の正常性判断を行う。
【００４８】
監視制御装置４は、ＣＰＵ（処理部）４１１、メモリ４１２、記憶部４１３、通信インタフェース４１４等を備えるコンピュータにより実現される。なお、ここでいうコンピュータは物理的なものでも、仮想化技術を用いた仮想的なものでもよい。
【００４９】
監視制御装置４は、通信インタフェース４１４を使用して、保守網７１、管理網７３と接続する。
【００５０】
監視制御装置４は、検証対象となる検証対象ソフトウェア２２のプログラム４１５を記憶部４１３に格納する。監視制御装置４は、検証対象ソフトウェア２２のプログラム４１５を、ソフトウェア検証を実施する前に保守端末５を使用して記憶部４１３に格納しておく。また、監視制御装置４は、検証結果をメモリ４１２に検証結果情報４１６として格納する。
【００５１】
監視制御装置４は、ソフトウェア検証の判定方法を示す情報として検証判定情報４１を保持する。
【００５２】
図１０に、検証判定情報４１の構成を例示した図を示す。
検証判定情報４１は、ソフトウェア検証の判定条件と実行シーケンスを表す検証判定シーケンス４２とソフトウェア検証実行の後処理の方法を示す後処理情報４５を含む。
【００５３】
検証判定シーケンス４２は、個別の判定条件を記載した検証パラメータ４３ｎ（ｎは１から始まるシーケンス番号を表す）のシーケンスとしてあらわされる。監視制御装置４のソフトウェア検証処理では、個別の検証パラメータ４３ｎに記載される条件で検証処理を実行し、シーケンスに定義される順番で全ての（または、予め選択されたひとつまたは複数の）検証処理を実行することで、ソフトウェア検証の正常性判断を行う。
検証パラメータ４３ｎは、それぞれ、検証方式情報４４１、振り分け条件情報４４２、検証期間情報４４３、判定条件（アラーム通知）情報４４４、判定条件（統計情報）情報４４５、判定条件（メッセージログ）情報４４６、判定条件（プログラムログ）情報４４７を含む。
【００５４】
検証方式情報４４１は、ソフトウェア検証を行う際のメッセージ中継装置３の中継動作を指定する情報で、複製方式か振り分け方式かの指定を行う。
振り分け条件情報４４２は、検証方式情報４４１で振り分けが指定されている場合に、振り分け条件を指定する。
検証期間情報４４３は、検証を行う時間を指定する。
判定条件（アラーム通知）情報４４４は、ソフトウェア検証の判定条件として、サービスに影響のある異常が発生した際に検証対象ソフトウェア２２から監視制御装置４に通知されるアラーム通知を使用するかどうかを指定する使用可否情報４４４１を持つ。
【００５５】
判定条件（統計情報）情報４４５は、ソフトウェア検証の判定条件として、現行ソフトウェア２１と検証対象ソフトウェア２２が記録する統計情報２１５を使用するかどうかを指定する使用可否情報４４５１を持つ。また、使用する場合の判定ロジックを指定する判定式４４５２を持つ。判定式４４５２は正常性に異常がある場合（例えば、障害、エラー、バグ等）の条件を示す。例えば、接続成功数という統計項目について、検証対象ソフトウェア２２の接続成功数が、現行ソフトウェア２１の接続成功数に比べて８０％を下回った場合に、監視制御装置４は、正常性に異常があると判断するなどである。
判定条件（メッセージログ）情報４４６は、ソフトウェア検証の判定条件として、現行ソフトウェア２１と検証対象ソフトウェア２２が記録するメッセージログ２１６を使用するかどうかを指定する使用可否情報４４６１を持つ。また、使用する場合の判定ロジックを指定する判定式４４６２を持つ。判定式４４６２は正常性に異常がある場合の条件を示す。例えば、現行ソフトウェア２１と検証対象ソフトウェア２２のメッセージログに記録されている応答メッセージの件数が一致しない場合に、監視制御装置４は、正常性に異常があると判断するなどである。
判定条件（プログラムログ）情報４４７は、ソフトウェア検証の判定条件として、現行ソフトウェア２１と検証対象ソフトウェア２２が記録するプログラムログ２１７を使用するかどうかを指定する使用可否情報４４７１を持つ。また、使用する場合の判定ロジックを指定する判定式４４７２を持つ。判定式４４７２は正常性に異常がある場合の条件を示す。例えば、検証対象ソフトウェア２２のプログラムログにのみ「ERROR」という文字列が記録されている場合に、監視制御装置４は、正常性に異常があると判断するなどである。
【００５６】
後処理情報４５は、検証判定シーケンス４２に記載の条件にてソフトウェア検証を実施した後に、ソフトウェア稼働装置２で動作する検証対象ソフトウェア２２を停止させるかどうかを指定する。後処理情報４５は、成功時の動作４５１と失敗時の動作４５２を含む、それぞれのケースの動作を指定する。
【００５７】
検証判定情報４１は、ソフトウェア検証を実行する際に、例えば、保守端末５から設定を行う。監視制御装置４は、検証判定情報４１で指定された内容に従い、ソフトウェア検証の実行制御およびソフトウェア検証の正常性判断を行う。
【００５８】
(ソフトウェア検証の動作)
次に、監視制御装置４におけるソフトウェア検証の動作を説明する。
図１１に、ソフトウェア検証のフローを示す。なお、ソフトウェア検証を行う前提として、ソフトウェア稼働装置２では検証対象ソフトウェア２２は動作していないものとする。また、メッセージ中継装置３の転送先情報３１には現行ソフトウェア２１の情報のみ存在しているものとする。また、監視制御装置４の記憶部４１３には検証対象ソフトウェア２２のプログラム４１５が格納されているものとする。
【００５９】
保守者によりソフトウェア検証が開始され、保守端末５を使用して検証判定情報の設定入力が行われると、監視制御装置４（ＣＰＵ４１１）は、メモリ４１２に、その検証判定情報４１を設定することで、検証判定情報の入力処理４０００を行う。
ソフトウェア検証の開始を指示された監視制御装置４は、次に、ソフトウェア稼働装置２に対して、検証ソフトウェアの起動処理４０１０を行い、ソフトウェア稼働装置２で検証対象ソフトウェア２２を起動する。
次に、監視制御装置４は、検証シーケンスの実行処理４０２０を行い、ソフトウェア検証の正常性判断を行う。
次に、監視制御装置４は、ソフトウェア検証の後処理４０３０を実行してソフトウェア検証の動作を終了する。
次に、監視制御装置４は、検証結果をメモリ４１２の検証結果情報４１６に記憶し、保守端末５を介して検証結果の表示処理４０４０を行い、保守者に検証結果を通知する。
【００６０】
図１２に、検証ソフトウェアの起動処理４０１０の詳細フローを示す。
監視制御装置４は、検証ソフトウェアの起動処理４０１０で、検証プログラムの展開処理４０１１を行い、自身の保持している検証対象ソフトウェア２２のプログラム４１５を、ソフトウェア稼働装置２の検証対象ソフトウェア２２のプログラム実行環境２０１Ｂに配置する。
次に、監視制御装置４は、検証ソフトウェアのプログラム起動処理４０１２を行い、ソフトウェア稼働装置２の検証対象ソフトウェア２２のプログラム実行環境２０１Ｂに対して検証対象ソフトウェア２２のプログラム起動を指示する。
【００６１】
図１３に、検証シーケンスの実行処理４０２０の詳細フローを示す。
監視制御装置４は、検証シーケンスの実行処理４０２０で、検証判定情報４１の検証判定シーケンス４２に含まれる検証パラメータ４３ｎの数だけ以下の４０２１〜４０２６の処理を繰り返して実行する。なお、監視制御装置４は、予め選択したひとつまたは複数の番号の数だけ繰り返すようにしてもよい。監視制御装置４は、繰り返し処理の実行の途中で異常ありと判断した場合、ソフトウェア検証の正常性判断を異常ありとしたうえで、検証シーケンスの実行処理４０２０を終了する。
【００６２】
監視制御装置４は繰り返し処理として、最初に、メッセージ中継装置の設定処理４０２１を行う。メッセージ中継装置の設定処理４０２１では、監視制御装置４は、メッセージ中継装置３の転送先情報３１に検証対象ソフトウェア２２に関する情報を追加する。また、監視制御装置４は、検証パラメータ４３ｎの検証方式情報４４１の内容（例、複製方式または振り分け方式）に従い、メッセージ中継装置３の中継設定情報３２を設定する。また、監視制御装置４は、検証方式情報４４１が振り分けの場合、振り分け条件情報４４２の内容に従い、メッセージ中継装置３の振り分け設定情報３３を設定する。
【００６３】
次に、監視制御装置４は、検証パラメータ４３ｎの検証期間情報４４３が経過するまで待機する。（図１３の４０２２）
監視制御装置４は、待機している最中に検証対象ソフトウェア２２からアラーム通知を受信した場合、検証パラメータ４３ｎの判定条件（アラーム通知）情報４４４を確認し、使用可否情報４４４１でアラーム通知を判定に使用すると指定されているのであれば、ソフトウェア検証の正常性に異常ありとしたうえで、検証シーケンスの実行処理４０２０を終了する。（図１３の４０２６）
【００６４】
次に、検証期間が経過した後、監視制御装置４は、統計情報による検証処理４０２３を行う。統計情報による検証処理４０２３では、監視制御装置４は、検証パラメータ４３ｎの判定条件（統計情報）情報４４５を確認し、使用可否情報４４５１で統計情報を判定に使用すると指定されているのであれば、現行ソフトウェア２１のプログラム実行環境２０１Ａから統計情報２１５Ａ、検証対象ソフトウェア２２のプログラム実行環境２０１Ｂから統計情報２１５Ｂの取得を行う。また、監視制御装置４は、取得した統計情報２１５Ａと統計情報２１５Ｂの内容を判定式４４５２で検証を行う。監視制御装置４は、判定式４４５２による検証の結果、異常ありと判断した場合、ソフトウェア検証の正常性に異常ありとしたうえで、検証シーケンスの実行処理４０２０を終了する。（図１３の４０２７）
【００６５】
次に、監視制御装置４は、メッセージログによる検証処理４０２４を行う。メッセージログによる検証処理４０２４では、監視制御装置４は、検証パラメータ４３ｎの判定条件（メッセージログ）情報４４６を確認し、使用可否情報４４６１でメッセージログを判定に使用すると指定されているのであれば、現行ソフトウェア２１のプログラム実行環境２０１Ａからメッセージログ２１６Ａ、検証対象ソフトウェア２２のプログラム実行環境２０１Ｂからメッセージログ２１６Ｂの取得を行う。また、監視制御装置４は、取得したメッセージログ２１６Ａとメッセージログ２１６Ｂの内容を判定式４４６２で検証を行う。監視制御装置４は、判定式４４６２による検証の結果として、異常ありと判断した場合、ソフトウェア検証の正常性に異常ありとしたうえで、検証シーケンスの実行処理４０２０を終了する。（図１３の４０２７）
【００６６】
次に、監視制御装置４は、プログラムログによる検証処理４０２５を行う。プログラムログによる検証処理４０２５では、監視制御装置４は、検証パラメータ４３ｎの判定条件（プログラムログ）情報４４７を確認し、使用可否情報４４７１でプログラムログを判定に使用すると指定されているのであれば、現行ソフトウェア２１のプログラム実行環境２０１Ａからプログラムログ２１７Ａ、検証対象ソフトウェア２２のプログラム実行環境２０１Ｂからプログラムログ２１７Ｂの取得を行う。また、監視制御装置４は、取得したプログラムログ２１７Ａとプログラムログ２１７Ｂの内容を判定式４４６２で検証を行う。監視制御装置４は、判定式４４６２による検証の結果として、異常ありと判断した場合、ソフトウェア検証の正常性に異常ありとしたうえで、検証シーケンスの実行処理４０２０を終了する。（図１３の４０２７）
【００６７】
監視制御装置４は、これらの処理４０２１〜４０２５を検証パラメータ４３ｎの数だけ（または、予め選択されたひとつまたは複数の数だけ）繰り返し実行して異常がなければ、ソフトウェア検証の正常性判断を異常なしとしたうえで、検証シーケンスの実行処理４０２０を終了する。（図１３の４０２８）
【００６８】
実行処理４０２６、４０２７、４０２８では、監視制御装置４は、判定結果（アラーム通知、統計情報、メッセージログ、プログラムログ）を検証結果情報４１６に記録および／または保守端末５に表示させることができる。
【００６９】
なお他の実施の形態の一例として、監視制御装置４は、検証判定情報４１の検証判定シーケンス４２において、検証パラメータ４３ｎの検証方式情報４４１を振り分けにしたうえで、シーケンスが進むごとに振り分け条件情報４４２の適用範囲を拡大することで、段階的に検証対象ソフトウェア２２に入力するクライアント６からのメッセージを増加させることができ、段階的な検証範囲の拡大を実現できる。
【００７０】
図１４に、ソフトウェア検証の後処理４０３０の詳細フローを示す。
監視制御装置４は、ソフトウェア検証の後処理４０３０で、検証判定情報４１の後処理情報４５の指定内容と、検証シーケンスの実行処理４０２０の判定結果から、検証対象ソフトウェア２２の停止を実行するのか判断する。監視制御装置４は、検証対象ソフトウェア２２の停止を行うと判断した場合、メッセージ中継装置３に対して転送先情報３１から検証対象ソフトウェア２２の情報を削除してソフトウェア検証の開始前の状態に戻す。また、監視制御装置４は、ソフトウェア稼働装置２に対して検証対象ソフトウェア２２のプログラムの停止を指示する。
【００７１】
また、監視制御装置４は、検証対象ソフトウェアの正常性を判断した結果として異常ありと判断した場合、例えば、メッセージ中継装置３の振り分け方法を変更して、クライアントからのメッセージを全て現行ソフトウェアに入力して、検証対象ソフトウェアの正常性判断を中止することができる。
【００７２】
なお他の実施の形態の一例として、監視制御装置４は、検証判定情報４１の後処理情報４５の失敗時の動作４５２において、ソフトウェア検証失敗時に検証ソフトウェア２２を停止させるように指定することで、保守者からの判断を待たずに速やかにソフトウェア検証の開始前の状態に戻すことができる。
【００７３】
また、他の実施の形態の一例として、監視制御装置４は、検証判定情報４１の検証判定シーケンス４２において、検証パラメータ４３ｎの検証方式情報４４１を振り分けにしたうえで、後処理情報４５の成功時の動作４５１において、ソフトウェア検証成功時に検証ソフトウェア２２を停止させないように指定することで、ソフトウェア検証を行いながら、ソフトウェア更新やコンフィグレーション変更等の処理を行うことができる。
【００７４】
（実施の形態の効果）
本実施の形態によると、メッセージ中継手段がメッセージを中継する方法として、クライアントから受信したメッセージを複製もしくは振り分けて現行ソフトウェアと検証対象ソフトウェアの両方に転送することにより、クライアントから送信されるメッセージを検証ソフトウェアで処理することができるため、クライアントの種類に起因する検証条件の精度を高めることができる。
【００７５】
（付記）
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれている。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部または全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記録装置、または、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【００７６】
１  ネットワークシステム
２  ソフトウェア稼働装置
３  メッセージ中継装置
４  監視制御装置
５  保守端末
６  クライアント（個体を識別する場合、６Ａ、６Ｂと表す）
７１  保守網
７２  外部データ網
７３  管理網
７４  内部データ網
２１  現行ソフトウェア
２２  検証対象ソフトウェア
２０１  プログラム実行環境２０１
２０１Ａ  現行ソフトウェアのプログラム実行環境
２０１Ｂ  検証対象ソフトウェアのプログラム実行環境
２１１  ＣＰＵ（ソフトウェア稼働装置）
２１２  メモリ（ソフトウェア稼働装置）
２１３  記憶部（ソフトウェア稼働装置）
２１４  通信インタフェース（ソフトウェア稼働装置）
２１５  統計情報
２１６  メッセージログ
２１７  プログラムログ
２１８  プログラム
２１１Ａ〜２１８Ａ  現行ソフトウェアのプログラム実行環境の内部要素
２１１Ｂ〜２１８Ｂ  検証対象ソフトウェアのプログラム実行環境の内部要素
３１  転送先情報
３２  中継設定情報
３３  振り分け設定情報
３０１  複製処理
３０２  フィルタリング処理
３０３  振り分け処理
３１１  ＣＰＵ(メッセージ中継装置）
３１２  メモリ(メッセージ中継装置）
３１３  記憶部(メッセージ中継装置）
３１４  通信インタフェース(メッセージ中継装置）
３１０１  転送先アドレス（転送先情報）
３１０２  転送先ソフトウェア種別（転送先情報）
３３０１  受信メッセージからの抽出条件（振り分け設定情報）
３３０２、３３１２  転送先アドレス（振り分け設定情報）
３３１１  振り分け比率（振り分け設定情報）
４１  検証判定情報
４２  検証判定シーケンス
４３ｎ  検証パラメータ４３ｎ（ｎは１から始まるシーケンス番号を表す）
４４１  検証方式情報
４４２  振り分け条件情報
４４３  検証期間情報
４４４  判定条件（アラーム通知）情報
４４４１  使用可否情報（アラーム通知）
４４５  判定条件（統計情報）情報
４４５１  使用可否情報 （統計情報）
４４５２  判定式（統計情報）
４４６  判定条件（メッセージログ）情報
４４６１  使用可否情報 （メッセージログ）
４４６２  判定式（メッセージログ）
４４７  判定条件（プログラムログ）情報
４４７１  使用可否情報 （プログラムログ）
４４７２  判定式（プログラムログ）
４５  後処理情報
４５１  成功時の動作
４５２  失敗時の動作
４１１  ＣＰＵ（監視制御装置）
４１２  メモリ（監視制御装置）
４１３  記憶部（監視制御装置）
４１４  通信インタフェース（監視制御装置）
４１５  検証対象ソフトウェアのプログラム（監視制御装置）
４０００  検証判定情報の入力
４０１０  検証ソフトウェアの起動処理
４０１１  検証プログラムの展開処理
４０１２  検証ソフトウェアのプログラム起動処理
４０２０  検証シーケンスの実行処理
４０２１  メッセージ中継装置の設定処理
４０２３  統計情報による検証処理
４０２４  メッセージログによる検証処理
４０２５  プログラムログによる検証処理
４０３０  ソフトウェア検証の後処理
４０４０  検証結果の表示
【図１】
2015114952.tif 000003
【図２】
2015114952.tif 000004
【図３】
2015114952.tif 000005
【図４】
2015114952.tif 000006
【図５】
2015114952.tif 000007
【図６】
2015114952.tif 000008
【図７】
2015114952.tif 000009
【図８】
2015114952.tif 000010
【図９】
2015114952.tif 000011
【図１０】
2015114952.tif 000012
【図１１】
2015114952.tif 000013
【図１２】
2015114952.tif 000014
【図１３】
2015114952.tif 000015
【図１４】
2015114952.tif 000016