(57)【特許請求の範囲】
【請求項１】
業務処理を実行するサーバ装置の機能を検証する検証システムにおいて、
業務処理を実行する複数のサーバ装置と、
前記複数のサーバ装置とネットワークにより接続され、前記複数のサーバ装置のいずれかで実行する業務処理に必要な入力データを生成するクライアント装置と、
前記クライアント装置の生成した入力データを前記複数のサーバ装置のいずれかへ送信する負荷分散装置と、
本番サーバ装置と検証サーバ装置にデータを送信する入力併走装置とを備え、
前記複数のサーバ装置のいずれかの内で、サーバ装置の機能を検証する対象となる本番サーバ装置とサーバ装置の機能を検証するための検証サーバ装置とを有し、
前記入力併走装置は、前記入力データの送信先の論理ＩＤと、前記本番サーバ装置の物理装置ＩＤと、前記検証サーバ装置の物理装置ＩＤを対にして保持する伴走管理テーブルを備え、
前記入力併走装置は、前記負荷分散装置から前記クライアント装置が生成した入力データを受信し、受信した入力データをコピーして、前記伴走管理テーブルに基づき前記本番サーバ装置と前記検証サーバ装置とに同じ内容の入力データを送信し、
前記本番サーバ装置と前記検証サーバ装置は、前記クライアント装置で生成された同じ内容の入力データを受信して、前記本番サーバ装置と前記検証サーバ装置とが同等の業務処理を実行することを特徴とする検証システム。
【請求項２】
さらに、出力照合装置を有し、
前記本番サーバ装置と前記検証サーバ装置とは、それぞれの業務処理の出力データを前記出力照合装置に送信し、
前記本番サーバ装置から受信した出力データと前記検証サーバ装置から受信した出力データとの照合を実行することを特徴とする請求項１記載の検証システム。
【請求項３】
前記本番サーバ装置は、自らの業務処理の出力データを前記検証サーバ装置に送信し、前記検証サーバ装置は、自らの業務処理の出力データと前記本番サーバ装置から受信した出力データとを照合することを特徴とする請求項１記載の検証システム。
【請求項４】
前記検証サーバ装置は、自らの業務処理の出力データを前記本番サーバ装置に送信し、前記本番サーバ装置は、自らの業務処理の出力データと前記検証サーバ装置から受信した出力データとを照合することを特徴とする請求項１記載の検証システム。
【請求項５】
前記本番サーバ装置の出力データと前記検証サーバ装置の出力データとを照合するにあたり、前記本番サーバ装置の出力データと前記検証サーバ装置の出力データとが揃った時点で順次照合を実行することを特徴とする請求項２ないし請求項４記載のいずれかの検証システム。
【請求項６】
前記本番サーバ装置の出力データと前記検証サーバ装置の出力データとを照合するにあたり、ある時点でまとめて照合を実行することを特徴とする請求項２ないし請求項４記載のいずれかの検証システム。
【請求項７】
前記本番サーバ装置の出力データと前記検証サーバ装置の出力データとを照合するにあたり、出力データ毎に照合を実行することを特徴とする請求項６記載の検証システム。
【請求項８】
前記本番サーバ装置の出力データと前記検証サーバ装置の出力データとを照合するにあたり、出力データをまとめた状態の照合を実行することを特徴とする請求項６記載の検証システム。
【請求項９】
さらに、構成管理装置を有し、
前記構成管理装置は、前記本番サーバ装置に対応して、前記本番サーバ装置の機能を検証するための前記検証サーバ装置を決定することを特徴とする請求項１記載の検証システム。
【請求項１０】
前記本番サーバ装置の処理能力と前記検証サーバ装置の処理能力に基づき、前記検証サーバ装置を決定することを特徴とする請求項９記載の検証システム。
【請求項１１】
前記構成管理装置は、前記本番サーバ装置の処理能力低下を補うサーバ装置を決定し、決定した情報を前記負荷分散装置に通知することを特徴とする請求項９記載の検証システム。
【請求項１２】
前記検証サーバ装置の業務処理を実行するアプリケーションソフトウェアのバージョンと前記本番サーバ装置の業務処理を実行するアプリケーションソフトウェアのバージョンとが異なることを特徴とする請求項１記載の検証システム。
【請求項１３】
前記検証サーバ装置の業務処理を実行するアプリケーションソフトウェアを稼動させる基盤ソフトウェアと前記本番サーバ装置の業務処理を実行するアプリケーションソフトウェアを稼動させる基盤ソフトウェアとが異なることを特徴とする請求項１記載の検証システム。
【請求項１４】
前記検証サーバ装置のハードウェア構成と前記本番サーバ装置のハードウェア構成とが異なることを特徴とする請求項１記載の検証システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システム移行時の新しいシステムを検証する検証システムであって、例えば、金融システムなどの複数のサーバ装置を有する大規模システムに用いて好適な検証システムに関する。
【背景技術】
【０００２】
従来、複数の大規模システムにおいては、システム移行時には、検証機に本番機と同じ本番データを投入してテストを実施したり、本番機と検証機の出力を照合してテストを実施したりすることにより、移行時にデグレードしていないことのチェックをおこなっている。
【０００３】
特許文献１には、同等性検証装置により変更前のプログラムと変更後のプログラムとの結果を照合する技術が開示されている。
【０００４】
また、特許文献２には、本番系システムの変更も停止もおこなうことなく、テスト支援装置にデータを転送し、並行テストをする技術が開示されている。
【０００５】
【特許文献１】特開２００１−３５０６５０号公報
【特許文献２】特開２００５−７３０４３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところが、特許文献１は、本番機でのテストを実施する場合には、業務を停止する必要がある。
【０００７】
特許文献２は、本番系システムと並行テストをおこなうものであるが、本番機で業務を処理しながら、検証機へ本番機と同じ本番データを投入したり、検証機と本番機の出力を照合することは、テストに関するオーバヘッドが大きく、システム全体の処理能力が低下してしまうため、リアルタイムで実施することは困難である。
【０００８】
また、システム移行後、新しい環境でデグレードが発生しても、すぐには検知することは困難である。
【０００９】
さらに、上記従来技術では、本番系のシステムとテストをおこなうシステムを並列に走行させるとの記述があるのみで、リソースを通常の倍だけ用意する必要がある。したがって、テストが真に必要なリソースだけ用意してテストにおけるコストを削減することについて考慮されていない。
【００１０】
特に、複数のサーバを有する大規模システムにおいて、一部のサーバをテストするためにシステムのスループットが低下してしまうという問題点があった。
【００１１】
本発明は、上記問題点を解決するためになされたものでその目的は、本番機で業務をしながら、システム全体の処理能力を低下させることなく、本番機でテストを実施することができるシステムを提供することにある。
【課題を解決するための手段】
【００１２】
本発明の業務処理を実行するサーバ装置の機能を検証する検証システムは、業務処理を実行する複数のサーバ装置と、複数のサーバ装置とネットワークにより接続され、複数のサーバ装置のいずれかで実行する業務処理に必要な入力を生成するクライアント装置と、クライアント装置の生成した入力を複数のサーバ装置のいずれかへ送信する負荷分散装置と、入力併走装置と、出力照合装置とを備えている。
【００１３】
そして、複数のサーバ装置のいずれかから機能を検証する対象となる本番サーバ装置を選び、それに対応してサーバ装置の機能を検証するための検証サーバ装置を設ける。これらの本番サーバ装置と検証サーバ装置は、クライアントで生成された同じ内容の入力を受信して、本番サーバ装置と検証サーバ装置とが同等の業務処理を実行する。
【００１４】
本番サーバ装置と検証サーバ装置とでは、テストのためにアプリケーションソフトウェアのバージョンが異なっていたり、そのアプリケーションソフトウェアを実行する基盤ソフトウェアが異なっている。また、ハードウェア構成が異なっている場合もあり得る。
【００１５】
入力併走装置は、負荷分散装置からクライアントが生成した入力を受信し、本番サーバ装置と検証サーバ装置とに同じ内容の入力を送信するようになっている。
【００１６】
出力照合装置は、本番サーバ装置と検証サーバ装置とから、それぞれ送信されてくる業務処理の出力を受信し、各々照合してリアルタイムにテストをおこなうことができる。
【００１７】
さらに、構成管理装置を設け、複数のサーバ装置の処理能力を勘案して、検証サーバ装置を定める。また、構成管理装置は、テストにより業務のスループットが低下するときには、複数のサーバ装置の中からそれを補完するための補完サーバを決定する。
【発明の効果】
【００１８】
本発明によれば、本番機で業務をしながら、システム全体の処理能力を低下させることなく、本番機でテストを実施することができるシステムを提供することができる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明に係る各実施形態を、図１ないし図１９を用いて説明する。
【００２０】
〔実施形態１〕
以下、第一の実施形態を、図１ないし図９を用いて説明する。
【００２１】
先ず、図１および図２を用いて本発明の第一の実施形態に係る検証システムのシステム構成について説明する。
図１は、第一の実施形態に係る検証システムのシステム概要図である。
図２は、第一の実施形態に係る検証システムの接続構成図である。
【００２２】
図２に示したように、本実施形態の検証システムは、複数のサーバ装置２０，２１，２２と、負荷分散装置３０と、入力併走装置４０とが接続され、さらに、クライアント装置１０が負荷分散装置３０にネットワーク７０を介して接続されている。ここで、サーバ装置２０，２１，２２には、それぞれ、ＰＩＤ２０，ＰＩＤ２１，ＰＩＤ２２、入力併走装置４０には、ＰＩＤ４０という物理装置ＩＤが付与されているものとする。
【００２３】
クライアント装置１０で生成された入力データは、図１に示されるように負荷分散装置３０に送られる。負荷分散装置３０では、システム全体のスループットが向上するように複数のサーバ装置の内のいずれかのサーバ装置に入力データを送信する。
【００２４】
本実施形態の検証システムは、複数のサーバ装置の内のいずれかの業務処理をおこなうときの機能を検証するシステムである。検証のために設けられるのがサーバ装置が検証用のサーバ装置２２（以下、単に「検証サーバ装置」ともいう）であり、検証の対象となるサーバ装置が本番用のサーバ装置２１（以下、単に「本番サーバ装置」ともいう）である。
【００２５】
これは、アプリケーションソフトウェアのバージョンアップをするときに、本番用のサーバ装置２１に安定したバージョンのアプリケーションソフトウェアを実行させ、検証用のサーバ装置２２に新しいバージョンのアプリケーションソフトウェアを実行させて検証させることができる。逆に、本番用のサーバ装置２１に新しくバージョンのアプリケーションソフトウェアのを実行させ、検証用のサーバ装置２２に前のバージョンのアプリケーションソフトウェアのを実行させて、デグレードチェックをおこなうこともできる。
【００２６】
また、そのようなアプリケーションソフトウェアを稼動させる基盤ソフトウェアを異ならせて、異なった基盤ソフトウェアの機能を検証することもできる。ここで、基盤ソフトウェアとは、ＯＳ(Operating System)と、ＯＳとアプリケーションソフトウェアの仲立ちとなるいわゆるミドルソフトウェアの両者を含む概念である。
【００２７】
さらに、本番用のサーバ装置と検証用のサーバ装置とのハードウェア構成を変更して、その動作を検証するようにしてもよい。サーバ装置のハードウェア構成の変更は、ＣＰＵを変更する、メモリを変更する、ボードの一部を取り換えるなどの部品レベルのものから、サーバ装置の全体を他のメーカに変更するなどの全てを変えてしまう場合の両者が含まれる。
【００２８】
入力併走装置４０は、負荷分散装置４０から入力データを受信し、本番用のサーバ装置２１と検証用のサーバ装置２２とに同じ内容の入力データを送るものとする。
【００２９】
次に、図３ないし図８を用いて本発明の第一の実施形態に係る検証システムの各部の構成と各部で取り扱うテーブルのデータ構造を説明する。
【００３０】
先ず、図３および図４を用いてサーバ装置について説明する。
図３は、サーバ装置２０の機能構成図である。
図４は、サーバ装置２０のハードウェア構成図である。
【００３１】
ここでは、サーバ装置２０を例に説明する。サーバ装置２０は、図３に示されるようにプログラムを実行する処理装置２１０から構成されている。
【００３２】
そして、処理装置２１０では、入力データを受信する受信部２１１と、入力データを送信する送信部２１２と、業務処理を実行する業務処理部２１３とが動作している。
【００３３】
サーバ装置２０のハードウェア構成は、図４に示されるようにＣＰＵ８１０、メモリ８２０、表示インタフェース８３０、入出力インタフェース８４０、ネットワークインタフェース８５０、記憶装置インタフェース８６０がバス８００により接続されたものである。
【００３４】
表示装置９００には、稼動状況のモニタや出力結果が表示される。入出力インタフェースには、キーボード９１０やマウス９２０などの入出力装置が接続され、管理者は、これらの入出力装置からコマンドなどを入力する。ネットワークインタフェース８５０には、ＬＡＮ、ＷＡＮなどのネットワークが接続され、このインターフェースを介して外部の装置と通信をおこなう。記憶装置インターフェース８６０には、データやプログラムを格納するハードディスク装置９３０などの記憶装置が接続される。ハードディスク装置９３０は、アレイ上に接続されてディスクアレイを構成する場合もある。
【００３５】
業務処理のアプリケーションプログラム、ＯＳなどは、ハードディスク装置９３０に格納されており、実行されるときにメモリ８２０にロードされて、ＣＰＵ８１０により実行される。
【００３６】
既に述べたように、本実施形態の本番用のサーバ装置２１と検証用サーバ装置２２は、ハードウェア構成の変更として、ＣＰＵ８１０の性能を変えたり、メモリ８２０を違う種別のものを用いたりしてもよい。また、ネットワークインターフェースのインターフェイスボード毎、交換してもよい。
【００３７】
また、本番用のサーバ装置２１とは、別のメーカのかなり部品構成などが異なったサーバで、検証用サーバ装置２２を構成してもよい。
【００３８】
次に、図５および図６を用いて負荷分散装置について説明する。
図５は、負荷分散装置３０の機能構成図である。
図６は、送信先管理テーブルの一例を示す図である。
【００３９】
負荷分散装置３０は、図５に示されるようにプログラムを実行する処理装置３１０と、データを格納する記憶装置３２０とから構成されている。
【００４０】
処理装置３１０では、入力データを受信する受信部３１１と、入力データを送信する送信部３１２と、入力データを送信する論理装置をサーバ装置の状態や入力データの内容などから選定する負荷分散部３１３と、選定した論理装置から実際に送信する物理装置を決定する送信先決定部３１４とが動作している。
【００４１】
記憶装置３２０には、入力データを送信する論理装置と物理装置の対応が登録されている送信先管理テーブル３２１が格納されている。
【００４２】
送信先管理テーブル３２１は、入力データを送信する論理装置と物理装置の対応が登録されているテーブルであり、図６に示されように送信先の論理装置ＩＤを格納するフィールド３２１１と、送信先の物理装置ＩＤを格納するフィールド３２１２とから構成されている。図６に示されている例では、ＶＩＤ２０という送信先論理装置ＩＤに対して、ＰＩＤ２０という送信先物理装置ＩＤが、また、ＶＩＤ２１という送信先論理装置ＩＤに対して、ＰＩＤ４０という送信先物理装置ＩＤが登録されている。これは、負荷分散部によって選定された論理装置がＶＩＤ２０である場合には、ＰＩＤ２０に相当するサーバ装置２０に入力データを送信し、負荷分散部によって選定された論理装置がＶＩＤ２１である場合には、ＰＩＤ４０に相当する入力併走装置４０に入力データを送信することを示している。
【００４３】
負荷分散装置３０は、ルータなどのネットワーク接続装置として実現されていもよいし、計算機装置の一機能として実現されてもよい。
【００４４】
次に、図７および図８を用いて入力併走装置について説明する。
図７は、入力併走装置４０の機能構成図である。
図８は、併走先管理テーブルの一例を示す図である。
【００４５】
入力併走装置４０は、図７に示されるようにプログラムを実行する処理装置４１０と、データを格納する記憶装置４２０とから構成されている。
【００４６】
処理装置４１０では、入力データを受信する受信部４１１と入力データを送信する送信部４１２と、入力データに付与する取引ＩＤを生成する取引ＩＤ生成部４１３と、入力データを複製し、複数のサーバ装置へ入力データを併走させる入力併走部４１４とが動作している。
【００４７】
記憶装置４２０には、入力データを併走させるサーバ装置が登録されている併走先管理テーブル４２１が格納されている。
【００４８】
併走先管理テーブル４２１は、入力データを併走させるサーバ装置が登録されているテーブルであり、図８に示されるように受信した論理装置ＩＤを格納するフィールド４２１１と、受信した入力データの送信先の物理装置ＩＤを格納するフィールド４２１２と、複製した入力データの送信先の物理装置ＩＤを格納するフィールド４２１３とから構成されている。図８に示される例では、ＶＩＤ２１という論理装置ＩＤに対して、ＰＩＤ２１という本番サーバ装置物理装置ＩＤと、ＰＩＤ２２という検証サーバ装置物理装置ＩＤとが登録されている。これは、受信した入力データに付与された論理装置ＩＤがＶＩＤ２１である場合、ＰＩＤ２１に相当するサーバ装置２１に受信した入力データを、ＰＩＤ２２に相当するサーバ装置２２に複製した入力データを送信することを示している。
【００４９】
また、図１に示したシステム構成図では、入力併走装置４０は、独立した装置として図示しているが、本番用のサーバ装置２１の中に組み込んでもよいし、検証用のサーバ装置２２の中に組み込んでもよい。さらに、負荷分散装置３０の中の一機能であってもよい。
【００５０】
さらに、入力併走装置４０は、ルータなどのネットワーク接続装置として実現されていもよいし、計算機装置の一機能として実現されてもよい。
【００５１】
次に、図９を用いて第一の実施形態に係る検証システムの処理について説明する。
図９は、第一の実施形態に係る検証システムの処理を示すフローチャートである。
【００５２】
先ず、クライアント端末１０は、業務処理を実行するために必要となる入力データを、ネットワーク７０を介して、負荷分散装置３０に送信し、負荷分散装置３０の受信部３１１は、当該入力データを受信する（Ｓ４０１）。
【００５３】
次に、負荷分散装置３０の負荷分散部３１３は、ステップＳ４０１で受信した入力データを送信すべきサーバ装置の論理装置ＩＤをサーバ装置の状態や入力データの内容に基づいて選定する（Ｓ４０２）。
【００５４】
次に、負荷分散装置３０の送信先決定部３１４は、ステップＳ４０２で選定した論理装置ＩＤと、送信先管理テーブル３２１とに基づき、送信先の物理装置ＩＤを決定する（Ｓ４０３）。
【００５５】
次に、負荷分散装置３０の送信部３１２は、ステップＳ４０３で決定した物理装置ＩＤに相当するサーバ装置、あるいは入力併走装置へ、ステップＳ４０２で選定した論理装置ＩＤと、ステップＳ４０１で受信した入力データとを送信する（Ｓ４０４）。ただし、ステップＳ４０３、Ｓ４０４はルータなどの負荷分散装置３０とは別の機器が実行してもよい。
【００５６】
ここで、ステップＳ４０４における送信先がサーバ装置であり、図１、図９に示したようにサーバ装置２０である場合には、ステップＳ４０４において、サーバ装置２０の受信部２１１が、論理装置ＩＤと入力データとを受信する。
【００５７】
そして、サーバ装置２０の業務処理部２１３は、ステップＳ４０４で受信した入力データを用いて、業務処理を実行する（Ｓ４０５）。
【００５８】
一方、ステップＳ４０４における送信先が入力併走装置４０である場合、ステップＳ４０４において、入力併走装置４０の受信部４１１が、論理装置ＩＤと入力データとを受信する。
【００５９】
次に、入力併走装置４０の取引ＩＤ生成部４１３は、取引ＩＤを生成する（Ｓ４０６）。ここで、取引ＩＤとして、トランザクションＩＤや取引通番などの既存のＩＤを用いてもよい。
【００６０】
次に、入力併走装置４０の入力併走部４１４は、ステップＳ４０４で受信した論理装置ＩＤと、併走先管理テーブル４２１とに基づき、本番サーバ装置物理装置ＩＤと、検証サーバ装置物理装置ＩＤとを決定する（Ｓ４０７）。
【００６１】
次に、入力併走装置４０の送信部４１２は、ステップＳ４０７で決定した本番サーバ装置物理装置ＩＤに相当するサーバ装置、図１、図９に示された例の場合には、サーバ装置２１に、ステップＳ４０６で生成した取引ＩＤと、ステップＳ４０４で受信した入力データとを送信し（Ｓ４０８）、サーバ装置２１の受信部２１１は、取引ＩＤと入力データとを受信する。
【００６２】
そして、サーバ装置２１の業務処理部２１３は、受信した入力データを用いて、業務処理を実行する（Ｓ４０９）。
【００６３】
一方、入力併走装置４０の送信部４１２は、ステップＳ４０７で決定した検証サーバ装置物理装置ＩＤに相当するサーバ装置、図１、図９に示された例の場合には、サーバ装置２２に、ステップＳ４０６で生成した取引ＩＤと、サーバ装置２０に送信したのと同じ内容の入力データとを送信し、サーバ装置２２の受信部２１１は、取引ＩＤと入力データとを受信する（Ｓ４１０）。
【００６４】
そして、サーバ装置２２の業務処理部２１３は、ステップＳ４１１で受信した入力データを用いて、業務処理を実行する（Ｓ４１２）。
【００６５】
本実施形態で示したように、本番用のサーバ装置２１で業務を処理しながら、検証用のサーバ装置２２で本番データを用いたテストを実施することができる。また、すべてのサーバ装置に対して検証用のサーバを割り当てる必要はないため、テストのための用意すべきリソースを削減することができる。すなわち、サーバ装置２１に対して検証用のサーバ装置２２を用意すればよく、サーバ装置２０は通常の処理を続けることができる。
【００６６】
〔実施形態２〕
以下、第二の実施形態を、図１０ないし図１５を用いて説明する。
【００６７】
本実施形態は、第一の実施形態の検証システムに出力照合装置を付け加えて、本番用のサーバ装置の出力と検証用のサーバ装置の出力を照合させるようにしたものである。
【００６８】
先ず、図１０および図１１を用いて第二の実施形態に係る検証システムのシステム構成について説明する。
図１０は、第二の実施形態に係る検証システムのシステム概要図である。
図１１は、第二の実施形態に係る検証システムの接続構成図である。
【００６９】
図１１に示されるように本実施形態の検証システムでは、第一の実施形態の構成要素に加えて、出力照合装置５０が加わっている。出力照合装置５０は、図１０に示されるように本番用のサーバ装置２１からの出力データと検証用のサーバ装置２２からの出力データを照合してその正当性を検証する。
【００７０】
次に、図１２ないし図１４を用いて出力照合装置５０について説明する。
図１２は、出力照合装置５０の機能構成図である。
図１３は、照合元管理テーブル５２１の一例を示す図である。
図１４は、出力保存テーブル５２２の一例を示す図である。
【００７１】
出力照合装置５０は、図１２に示されるようにプログラムを実行する処理装置５１０と、データを格納する記憶装置５２０とから構成されている。
【００７２】
処理装置５１０では、入力データを受信する受信部５１１と、入力データを送信する送信部５１２と、サーバ装置の業務処理部２１３の出力を保存する出力保存部５１３と、出力保存部５１３の保存した出力データを照合する出力照合部３１４とが動作している。
【００７３】
記憶装置５２０には、出力結果を照合するサーバ装置が登録されている照合元管理テーブル５２１と、サーバ装置の業務処理部２１３の出力結果を保存する出力保存テーブル５２２とが格納されている。
【００７４】
照合元管理テーブル５２１は、出力結果を照合するサーバ装置が登録されているテーブルであり、図１３に示されるように本番用のサーバ装置の物理装置ＩＤ（本番サーバ装置物理装置ＩＤ）を格納するフィールド５２１１と、検証用のサーバ装置の物理装置ＩＤ（検証サーバ装置物理装置ＩＤ）を格納するフィールド５２１２とから構成されている。図１３に示された例の場合では、ＰＩＤ２１という本番サーバ装置物理装置ＩＤに対して、ＰＩＤ２２という検証サーバ装置物理装置ＩＤが登録されている。これは、ＰＩＤ２１に相当するサーバ装置２１の出力データとＰＩＤ２２に相当するサーバ装置２２の出力データを照合することを示している。
【００７５】
出力保存テーブル５２２は、サーバ装置の業務処理部２１３の出力を保存するテーブルであり、取引ＩＤを格納するフィールド５２２１と、本番用のサーバ装置の物理装置ＩＤ（本番サーバ装置物理装置ＩＤ）を格納するフィールド５２２２と、本番用のサーバ装置の一つあるいは複数の出力データを格納するフィールド５２２３と、検証用のサーバ装置の物理装置ＩＤ（検証サーバ装置物理装置ＩＤ）を格納するフィールド５２２４と、検証用のサーバ装置の一つあるいは複数の出力データを格納するフィールド５２２５とから構成されている。図１４に示された例の場合では、ＴＩＤ０１という取引ＩＤに対して、ＰＩＤ２１という本番サーバ装置物理装置ＩＤと、ＯＵＴ２１０１という本番用のサーバ装置の出力データと、ＰＩＤ２２という検証サーバ装置物理装置ＩＤと、ＯＵＴ２２０１という検証用のサーバ装置の出力データとが登録されている。これは、ＴＩＤ０１に相当する入力データを用いて、ＰＩＤ２１に相当するサーバ装置２１で実行された業務処理の出力データがＯＵＴ２１０１であり、ＰＩＤ２２に相当するサーバ装置２２で実行された業務処理の出力データがＯＵＴ２２０１であることを示している。
【００７６】
次に、図１５を用いて第二の実施形態に係る検証システムの処理について説明する。
図１５は、第二の実施形態に係る検証システムの処理を示すフローチャートである。
【００７７】
本実施形態では、第一の実施形態で説明した事項については省略し、主に出力照合装置による出力照合処理について説明する。
【００７８】
先ず、第一の実施形態の図９により説明した本番用のサーバ装置２１と検証用のサーバ装置２２で業務処理を並行しておこなう（Ｓ４０１〜Ｓ４１２）。
【００７９】
ここで、本番用のサーバ装置、図１０、図１５に示した例の場合、サーバ装置２１の送信部２１２は、出力照合装置５０に、ステップＳ４０９で受信した取引ＩＤと、ステップＳ４１０で実行した業務処理の一つあるいは複数の出力データとを送信し（Ｓ５０１）、出力照合装置５０の受信部５１１は、取引ＩＤと出力データとを受信する。ただし、一つあるいは複数の出力データは、出力した時点で順次送信してもよいし、ある時点でまとめて送信してもよい。
【００８０】
次に、出力照合装置５０の出力保存部５１３は、ステップＳ５０１で受信した取引ＩＤと、送信元のサーバ装置、図１０、図１５に示した例の場合には、サーバ装置２１の物理装置ＩＤと、ステップＳ５０１で受信した出力データとを、出力保存テーブル５２２へ保存する（Ｓ５０２）。
【００８１】
一方、検証用のサーバ装置、図１０、図１５に示した例の場合、サーバ装置２２の送信部２１２は、出力照合装置５０に、ステップＳ４１１で受信した取引ＩＤと、ステップＳ４１２で実行した業務処理の一つあるいは複数の出力データとを送信し（Ｓ５０３）、出力照合装置５０の受信部５１１は、取引ＩＤと出力データとを受信する。ただし、一つあるいは複数の出力データは、出力した時点で順次送信してもよいし、ある時点でまとめて送信してもよい。
【００８２】
次に、出力照合装置５０の出力保存部５１３は、ステップＳ５０４で受信した取引ＩＤと、送信元のサーバ装置、図１０、図１５に示した例の場合、サーバ装置２２の物理装置ＩＤと、ステップＳ５０３で受信した出力データとを、出力保存テーブル５２２へ保存する（Ｓ５０４）。
【００８３】
次に、出力照合装置５０の出力照合部５１４は、照合元管理テーブル５２１を基に、出力データを照合する複数のサーバ装置を決定する（Ｓ５０５）。
【００８４】
そして、出力照合装置５０の出力照合部５１４は、ステップＳ５０１やステップＳ５０４で送信されてきた取引ＩＤに基づき、出力保存テーブル５２２より、ステップＳ５０６で決定したサーバ装置、図１０、図１５に示した例の場合、サーバ装置２１とサーバ装置２２の出力データを取得し、照合する（Ｓ５０６）。
【００８５】
本実施形態では、図１０、図１１に示されるように、出力照合装置５０は、独立の装置として説明した。しかしながら、出力照合装置５０の有する機能は、本番用のサーバ装置であるサーバ装置２１、あるいは、検証用のサーバ装置であるサーバ装置２２が有していてもよい。
【００８６】
ステップＳ５０７の照合処理は、照合対象のサーバ装置からの出力データが揃った時点で順次実行してもよいし、ある時点でまとめて実行してもよい。例えば、サーバからの出力データがＳＱＬコマンドである場合に、本番用のサーバ装置２１と検証用のサーバ装置２２のＳＱＬコマンドを受け取った時点で照合してもよいし、半日ごと、あるいは、一日ごとに照合をすることにしてもよい。
【００８７】
また、ある時点でまとめて照合する場合に、一つ一つのＳＱＬコマンドを照合してもよいし、複数のＳＱＬコマンドによりデータベースを更新して、適用したデータベースの更新状態を照合するようにしてもよい。
【００８８】
また、ステップＳ５０１やステップＳ５０３のサーバ装置と出力照合装置５０との出力データの受け渡しは、本実施形態のようにサーバ装置が出力照合装置５０へ送信してもよいし、出力照合装置５０の方からトリガーを掛けてサーバ装置から取得するようにしてもよい。
【００８９】
本実施形態により、サーバ装置２１で業務を処理しながら、サーバ装置２２で本番データを用いたテストを実施するとともに、デグレードのチェックをおこなうことができる。また、すべてのサーバ装置に対して検証用のサーバを割り当てる必要はないため、テストのための用意すべきリソースを削減することができる。
【００９０】
さらに、本番用のサーバ装置２１で移行後のシステムを動作させ、検証用のサーバ装置２２で移行前のシステムを動作させ、出力照合装置５０により、移行後のシステムで動作しているサーバ装置２２と移行前のシステムで動作しているサーバ装置２１の動作を検証することによって、移行後のシステムのデグレードの発生をすぐに検知することができる。
【００９１】
〔実施形態３〕
以下、第三の実施形態を、図１６ないし図１９を用いて説明する。
【００９２】
本実施形態は、第二の実施形態の検証システムに、さらに構成管理装置を付け加えて、検証サーバ装置と検証によるスループットの低下を補うための補完サーバを動的に選択できるようにしたものである。
【００９３】
先ず、図１６を用いて第三の実施形態に係る検証システムのシステム構成について説明する。
図１６は、第三の実施形態に係る検証システムの接続構成図である。
【００９４】
本実施形態の検証システムは、図１６に示されるように、図１１に示される第二の実施形態の構成に構成管理装置６０が加わっている。
【００９５】
構成管理装置６０は、複数のサーバ装置の中から各々のサーバ装置の処理能力を勘案し、検証対象となる本番用のサーバ装置に対応する検証サーバ装置と、検証のためにスループットの低下を補うために適切な補完サーバ装置を選択する機能を有する装置である。
【００９６】
次に、図１７および図１８を用いて構成管理装置６０について説明する。
図１７は、構成管理装置６０の機能構成図である。
図１８は、構成管理テーブルの一例を示す図である。
【００９７】
構成管理装置６０は、図１７に示されるようにプログラムを実行する処理装置６１０と、データを格納する記憶装置６２０とから構成されている。
【００９８】
処理装置６１０では、検証用のサーバ装置を割り当てる検証サーバ決定部６１１と、処理能力を補完するサーバ装置を割り当てる補完サーバ決定部６１２とが動作している。
【００９９】
記憶装置６２０には、サーバ装置の情報が登録されている構成管理テーブル６２１が格納されている。
【０１００】
構成管理テーブル６２１は、図１８に示されるようにサーバ装置の情報が登録されているテーブルであり、サーバ装置の物理装置ＩＤ（サーバ装置物理装置ＩＤ）を格納するフィールド６２１１と、サーバ装置の使用状況を格納するフィールド６２１２と、サーバ装置の処理能力などの属性を格納するフィールド６２１３とから構成されている。図１８に示されている例では、ＰＩＤ２０というサーバ装置物理装置ＩＤに対して、「使用中」という使用状況と、「処理能力＝１０、…」という属性とが、ＰＩＤ２３というサーバ装置物理装置ＩＤに対して、「空き」という使用状況と、「処理能力＝５、…」という属性とが、登録されている。これは、ＰＩＤ２０に相当するサーバ装置２０は、処理能力が１０であり、既に使用中であること、ＰＩＤ２３に相当するサーバ装置２３は、処理能力が５であり、現在空き状態、すなわち、新たな処理に割当可能であることを示している。
【０１０１】
次に、図１９を用いて本実施形態の検証システムで実行されるサーバ装置割当処理について説明する。
図１９は、サーバ装置割当処理を示すフローチャートである。
【０１０２】
先ず、構成管理装置６０の検証サーバ決定部６１１は、あるサーバ装置、図１９に示した例の場合には、サーバ装置２１の検証サーバ装置の割当を要求する（Ｓ６０１）。
【０１０３】
次に、構成管理装置６０の検証サーバ決定部６１１は、サーバ装置２１の物理装置ＩＤであるＰＩＤ２１と構成管理テーブル６２１とに基づいて、検証サーバ装置として割り当てる一つ、あるいは複数のサーバ装置を決定する（Ｓ６０２）。ここで、検証サーバ決定部６１１は、構成管理テーブル６２１に登録されているサーバ装置の中から、空き状態の中から適当に検証サーバ装置を決定してもよいし、サーバ装置の処理性能などの属性を加味して検証サーバ装置を決定してもよい。ただし、処理能力としては、検証サーバ装置の方が本番用のサーバ装置に比べて大きいか等しいことが望ましい。
【０１０４】
次に、構成管理装置６０の検証サーバ決定部６１１は、ステップＳ６０２で決定したサーバ装置、図１９に示した例の場合には、サーバ装置２２に、サーバ装置２１を検証する準備を指示し、サーバ装置２２はサーバ装置２１の検証のための準備を実行する（Ｓ６０３）。
【０１０５】
次に、構成管理装置６０の検証サーバ決定部６１１は、負荷分散装置３０に、サーバ装置２１への入力データは入力併走装置４０へ送信することを通知し、負荷分散装置３０は、入力併走装置４０を送信先として登録する（Ｓ６０４）。
【０１０６】
次に、構成管理装置６０の検証サーバ決定部６１１は、入力併走装置４０に、ステップＳ６０２で決定したサーバ装置、図１９に示した例の場合には、サーバ装置２２をサーバ装置２１の検証サーバ装置として通知し、入力併走装置４０は、サーバ装置２２をサーバ装置２１の検証サーバ装置として登録する（Ｓ６０５）。
【０１０７】
次に、構成管理装置６０の検証サーバ決定部６１１は、出力照合装置５０に、ステップＳ６０２で決定したサーバ装置、図１９に示した例の場合には、サーバ装置２２をサーバ装置２１の検証サーバ装置として通知し、出力照合装置５０は、サーバ装置２２をサーバ装置２１の検証サーバ装置として登録する（Ｓ６０６）。
【０１０８】
次に、構成管理装置６０の検証サーバ決定部６１１は、サーバ装置２１に、検証対象となったことを通知すると、サーバ装置２１は、検証対象としての動作する（Ｓ６０７）。
【０１０９】
次に、構成管理装置６０の補完サーバ決定部６１２は、必要に応じて、検証処理をおこなうにあたり低下する処理能力と、構成管理テーブル６２１とに基づいて、その処理能力を補うための補完サーバ装置を一つあるいは複数のサーバ装置の中から決定する（Ｓ６０８）。
【０１１０】
次に、構成管理装置６０の補完サーバ決定部６１２は、ステップＳ６０５で決定したサーバ装置、図１９に示される例の場合には、サーバ装置２３に、サーバ装置２１と同じ種類に属する業務処理を実行する準備を指示し、サーバ装置２３はサーバ装置２１と同じ種類に属する業務処理を実行するための準備を実行する（Ｓ６０９）。
【０１１１】
そして、構成管理装置６０の補完サーバ決定部６１２は、負荷分散装置３０に、サーバ装置２１の検証により処理能力が低下すること、ステップＳ６０３で決定したサーバ装置、図１９に示した例の場合には、サーバ装置２３を追加することなどの構成変更を指示し、負荷分散装置３０は、サーバ装置２１の処理能力低下を登録し、サーバ装置２３を送信先として登録する（Ｓ６１０）。
【０１１２】
ここで、ステップＳ６０２からステップＳ６１０の順番は、業務処理との同期との関連で、入れ替えてもよい。
【０１１３】
本実施形態により、処理能力を勘案して空いている本番用のサーバ機の中から検証用のサーバ装置２２を割り当てることにより、本番システムを停止させることなく、本番システムでのテストを実施することができる。また、検証によりサーバ装置２１の処理能力の低下を補完するサーバ装置２３を、検証用のサーバ装置２２の割り当てと同時におこなうことにより、検証によるシステム全体の処理能力の低下を防止することができる。
【図面の簡単な説明】
【０１１４】
【図１】第一の実施形態に係る検証システムのシステム概要図。
【図２】第一の実施形態に係る検証システムの接続構成図。
【図３】サーバ装置２０の機能構成図。
【図４】サーバ装置２０のハードウェア構成図。
【図５】負荷分散装置３０の機能構成図。
【図６】送信先管理テーブルの一例を示す図。
【図７】入力併走装置４０の機能構成図。
【図８】併走先管理テーブルの一例を示す図。
【図９】第一の実施形態に係る検証システムの処理を示すフローチャート。
【図１０】第二の実施形態に係る検証システムのシステム概要図。
【図１１】第二の実施形態に係る検証システムの接続構成図。
【図１２】出力照合装置５０の機能構成図。
【図１３】照合元管理テーブル５２１の一例を示す図。
【図１４】出力保存テーブル５２２の一例を示す図。
【図１５】第二の実施形態に係る検証システムの処理を示すフローチャート。
【図１６】第三の実施形態に係る検証システムの接続構成図。
【図１７】構成管理装置６０の機能構成図。
【図１８】構成管理テーブルの一例を示す図。
【図１９】サーバ装置割当処理を示すフローチャート。
【符号の説明】
【０１１５】
１０…クライアント装置
２０，２１，２２，２３，２４…サーバ装置
３０…負荷分散装置
４０…入力併走装置
５０…出力照合装置
６０…構成管理装置
７０…ネットワーク。
【図１】
0004495688.tif 000002
【図２】
0004495688.tif 000003
【図３】
0004495688.tif 000004
【図４】
0004495688.tif 000005
【図５】
0004495688.tif 000006
【図６】
0004495688.tif 000007
【図７】
0004495688.tif 000008
【図８】
0004495688.tif 000009
【図９】
0004495688.tif 000010
【図１０】
0004495688.tif 000011
【図１１】
0004495688.tif 000012
【図１２】
0004495688.tif 000013
【図１３】
0004495688.tif 000014
【図１４】
0004495688.tif 000015
【図１５】
0004495688.tif 000016
【図１６】
0004495688.tif 000017
【図１７】
0004495688.tif 000018
【図１８】
0004495688.tif 000019
【図１９】
0004495688.tif 000020