(57)【要約】【課題】本発明は、リリースの失敗によって影響を受けるソフトウェアをリリース前の状態に自動で戻すことができ、リリースに要するユーザの作業負荷を軽減することができるソフトウェアリリースシステムを提供する。【解決手段】複数のサーバ１０４のうちリリース対象となるサーバのリリース方式と当該サーバのリリース順序が設定されたサーバリストと当該サーバへリリースするソフトウェアの設定を行い、設定されたリリース方式及びサーバリストに基づいてソフトウェアのリリースを行う場合、リリース対象となるサーバにおけるリリース対象のソフトウェアを退避ファイルとしてコピーした後に、当該リリース対象のソフトウェアのリリースを行う。そして、ソフトウェアのリリース失敗時には、リリースされたソフトウェアを退避ファイルによりリリース前のソフトウェアに戻す。【選択図】図２５
2010117980.tif 000002
【特許請求の範囲】
【請求項１】
複数のサーバと、当該複数のサーバに対するソフトウェアのリリースを行うリリース制御装置とを備えるソフトウェアリリースシステムにおいて、
前記リリース制御装置は、
前記複数のサーバのうちリリース対象となるサーバのリリース方式と当該サーバのリリース順序が設定されたサーバリストと当該サーバへリリースするソフトウェアの設定を行う設定手段と、
前記設定されたリリース方式及びサーバリストに基づいて前記ソフトウェアのリリースを行う場合、前記リリース対象となるサーバにおけるリリース対象のソフトウェアを退避ファイルとしてコピーした後に、当該リリース対象のソフトウェアのリリースを行うリリース手段と、
前記ソフトウェアのリリース失敗時には、前記リリースされたソフトウェアを前記退避ファイルによりリリース前のソフトウェアに戻すリリース戻し手段とを備えることを特徴とするソフトウェアリリースシステム。
【請求項２】
前記設定手段は、少なくともリリース前処理、アプリケーション停止、ファイル置換前処理、ファイル置換、ファイル置換後処理、アプリケーション開始、及びリリース後処理を処理内容とする複数のコマンドを組み合わせたリリース方式の設定を行うことを特徴とする請求項１記載のソフトウェアリリースシステム。
【請求項３】
前記設定手段は、前記リリース戻し手段によるソフトウェアの戻し時に実行またはスキップするコマンドの設定を行い、
前記リリース戻し手段は、前記設定手段による設定に応じて前記コマンドの実行またはスキップを行うことを特徴とする請求項２記載のソフトウェアリリースシステム。
【請求項４】
前記リリース制御装置は、前記ソフトウェアのリリース失敗時に、前記リリース戻し手段によるソフトウェアの戻しをユーザに選択させる選択手段をさらに備え、
前記選択手段で前記リリース戻し手段によるソフトウェアの戻しが選択された場合、前記リリース戻し手段は、前記設定手段により実行に設定されたコマンドのみを対象に、リリースが失敗したサーバから逆の順でリリースが完了しているサーバのリリースを行うことを特徴とする請求項３記載のソフトウェアリリースシステム。
【請求項５】
前記設定手段は、前記リリース対象となる複数のサーバのリリース順序を同時に設定することができ、
前記リリース戻し手段は、前記設定手段によりリリース順序が同時に設定された複数のサーバの少なくとも１つで前記ソフトウェアのリリースが失敗した場合、同時に設定された複数のサーバから逆の順でリリースが完了しているサーバのリリースを行うことを特徴とする請求項４記載のソフトウェアリリースシステム。
【請求項６】
前記リリース制御装置は、前記ソフトウェアのリリース失敗が通常のリリース時の失敗か、前記リリース戻し手段によるソフトウェアの戻し時の失敗かを判定する判定手段をさらに備えることを特徴とする請求項１乃至５のいずれか１項に記載のソフトウェアリリースシステム。
【請求項７】
複数のサーバに対してソフトウェアのリリースを行うリリース制御装置において、
前記複数のサーバのうちリリース対象となるサーバのリリース方式と当該サーバのリリース順序が設定されたサーバリストと当該サーバへリリースするソフトウェアの設定を行う設定手段と、
前記設定されたリリース方式及びサーバリストに基づいて前記ソフトウェアのリリースを行う場合、前記リリース対象となるサーバにおけるリリース対象のソフトウェアを退避ファイルとしてコピーした後に、当該リリース対象のソフトウェアのリリースを行うリリース手段と、
前記ソフトウェアのリリース失敗時には、前記リリースされたソフトウェアを前記退避ファイルによりリリース前のソフトウェアに戻すリリース戻し手段とを備えることを特徴とするリリース制御装置。
【請求項８】
複数のサーバに対してソフトウェアのリリースを行うリリース制御装置のリリース方法において、
前記複数のサーバのうちリリース対象となるサーバのリリース方式と当該サーバのリリース順序が設定されたサーバリストと当該サーバへリリースするソフトウェアの設定を行う設定工程と、
前記設定されたリリース方式及びサーバリストに基づいて前記ソフトウェアのリリースを行う場合、前記リリース対象となるサーバにおけるリリース対象のソフトウェアを退避ファイルとしてコピーした後に、当該リリース対象のソフトウェアのリリースを行うリリース工程と、
前記ソフトウェアのリリース失敗時には、前記リリースされたソフトウェアを前記退避ファイルによりリリース前のソフトウェアに戻すリリース戻し工程とを備えることを特徴とするリリース方法。
【請求項９】
複数のサーバに対してソフトウェアのリリースを行うリリース制御装置のリリース方法を当該リリース制御装置に実行させるプログラムにおいて、
前記複数のサーバのうちリリース対象となるサーバのリリース方式と当該サーバのリリース順序が設定されたサーバリストと当該サーバへリリースするソフトウェアの設定を行う設定ステップと、
前記設定されたリリース方式及びサーバリストに基づいて前記ソフトウェアのリリースを行う場合、前記リリース対象となるサーバにおけるリリース対象のソフトウェアを退避ファイルとしてコピーした後に、当該リリース対象のソフトウェアのリリースを行うリリースステップと、
前記ソフトウェアのリリース失敗時には、前記リリースされたソフトウェアを前記退避ファイルによりリリース前のソフトウェアに戻すリリース戻しステップとを備えることを特徴とするプログラム。
【請求項１０】
複数のサーバに対してソフトウェアのリリースを行うリリース制御装置のリリース方法を当該リリース制御装置に実行させるプログラムを記憶した記憶媒体において、
前記プログラムは、
前記複数のサーバのうちリリース対象となるサーバのリリース方式と当該サーバのリリース順序が設定されたサーバリストと当該サーバへリリースするソフトウェアの設定を行う設定ステップと、
前記設定されたリリース方式及びサーバリストに基づいて前記ソフトウェアのリリースを行う場合、前記リリース対象となるサーバにおけるリリース対象のソフトウェアを退避ファイルとしてコピーした後に、当該リリース対象のソフトウェアのリリースを行うリリースステップと、
前記ソフトウェアのリリース失敗時には、前記リリースされたソフトウェアを前記退避ファイルによりリリース前のソフトウェアに戻すリリース戻しステップとを備えることを特徴とする記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアリリースシステム、リリース制御装置及び方法、プログラム、並びに記憶媒体に関し、特に、複数のサーバに対するソフトウェアのリリース技術に関する。
【背景技術】
【０００２】
センタコンピュータから複数の端末装置へのプログラムやデータ等のモジュールのリリースを、端末装置側のプログラム実行時間を操作者が考慮することなく即時に配信が行えると共に、新旧モジュールの整合性を保証し自動的に組み込むことを可能にする技術が提案されている（例えば、特許文献１参照）。また、複数のサーバに対して安全にリリースを行うための方法や装置が提案または製品化されている。上記いずれも、対象となるサーバにおけるリリース（新規モジュールへの「切り替え」）処理が、独立して行われるものとなっている。
【０００３】
一方、機能分割された複数のサーバで構成される大規模なシステムのソフトウェアのバージョンアップでは、各サーバ間の関連性によりリリースする順番が必要になる場合が多く、リリース方法（業務停止や業務起動、ファイル置換等のリリースに必要なコマンドをリリース毎に組み合わせたもの）やサーバのリリース順番が記述されている「リリースシナリオ」と呼ばれるファイルを作成し、それをリリース制御ツールに読み込ませることで、意図したリリース方法やサーバのリリース順番でサーバにアプリケーションをリリースする方法を実現している。
【０００４】
例えば、ＡサーバとＢサーバがネットワークを介して接続され、ＢサーバがＡサーバに存在するデータベースの情報を参照しながらＢサーバ自身の処理を実行するために通信を行うシステムにおいて、Ｂサーバが参照しているデータベースの情報の整合性を取るタイミングを初回起動時に行い、以降定期的に差分のみの参照を行っている場合、Ｂサーバ起動時にＡサーバが起動していないと通信エラーとなり、情報の参照が不可となる。このような場合、リリースの順番としてＡサーバ→Ｂサーバの順にリリースを行う必要がある。また、リリースが失敗した場合もそのリリースした順番を守りながらバージョンを戻す必要がある。なお、リリースとは、各サーバにリリースするモジュールを起動させることまで考慮して行うことを云う。
【特許文献１】特開平１０−１７１６６３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記特許文献１記載の発明では、リリースする順番が必要な大規模なシステムにおいてリリース中にリリースが失敗した場合、リリースの失敗によって影響を受けるリリース済みのモジュールをリリース前の状態に自動的に戻す自動戻しができない。
【０００６】
そこで、本発明は、リリースの失敗によって影響を受けるソフトウェアをリリース前の状態に自動で戻すことができ、リリースに要するユーザの作業負荷を軽減することができるソフトウェアリリースシステム、リリース制御装置及び方法、プログラム、並びに記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、請求項１記載のソフトウェアリリースシステムは、複数のサーバと、当該複数のサーバに対するソフトウェアのリリースを行うリリース制御装置とを備えるソフトウェアリリースシステムにおいて、前記リリース制御装置は、前記複数のサーバのうちリリース対象となるサーバのリリース方式と当該サーバのリリース順序が設定されたサーバリストと当該サーバへリリースするソフトウェアの設定を行う設定手段と、前記設定されたリリース方式及びサーバリストに基づいて前記ソフトウェアのリリースを行う場合、前記リリース対象となるサーバにおけるリリース対象のソフトウェアを退避ファイルとしてコピーした後に、当該リリース対象のソフトウェアのリリースを行うリリース手段と、前記ソフトウェアのリリース失敗時には、前記リリースされたソフトウェアを前記退避ファイルによりリリース前のソフトウェアに戻すリリース戻し手段とを備えることを特徴とする。
【０００８】
上記目的を達成するために、請求項７記載のリリース制御装置は、複数のサーバに対してソフトウェアのリリースを行うリリース制御装置において、前記複数のサーバのうちリリース対象となるサーバのリリース方式と当該サーバのリリース順序が設定されたサーバリストと当該サーバへリリースするソフトウェアの設定を行う設定手段と、前記設定されたリリース方式及びサーバリストに基づいて前記ソフトウェアのリリースを行う場合、前記リリース対象となるサーバにおけるリリース対象のソフトウェアを退避ファイルとしてコピーした後に、当該リリース対象のソフトウェアのリリースを行うリリース手段と、前記ソフトウェアのリリース失敗時には、前記リリースされたソフトウェアを前記退避ファイルによりリリース前のソフトウェアに戻すリリース戻し手段とを備えることを特徴とする。
【０００９】
上記目的を達成するために、請求項８記載のリリース方法は、複数のサーバに対してソフトウェアのリリースを行うリリース制御装置のリリース方法において、前記複数のサーバのうちリリース対象となるサーバのリリース方式と当該サーバのリリース順序が設定されたサーバリストと当該サーバへリリースするソフトウェアの設定を行う設定工程と、前記設定されたリリース方式及びサーバリストに基づいて前記ソフトウェアのリリースを行う場合、前記リリース対象となるサーバにおけるリリース対象のソフトウェアを退避ファイルとしてコピーした後に、当該リリース対象のソフトウェアのリリースを行うリリース工程と、前記ソフトウェアのリリース失敗時には、前記リリースされたソフトウェアを前記退避ファイルによりリリース前のソフトウェアに戻すリリース戻し工程とを備えることを特徴とする。
【００１０】
上記目的を達成するために、請求項９記載のプログラムは、複数のサーバに対してソフトウェアのリリースを行うリリース制御装置のリリース方法を当該リリース制御装置に実行させるプログラムにおいて、前記複数のサーバのうちリリース対象となるサーバのリリース方式と当該サーバのリリース順序が設定されたサーバリストと当該サーバへリリースするソフトウェアの設定を行う設定ステップと、前記設定されたリリース方式及びサーバリストに基づいて前記ソフトウェアのリリースを行う場合、前記リリース対象となるサーバにおけるリリース対象のソフトウェアを退避ファイルとしてコピーした後に、当該リリース対象のソフトウェアのリリースを行うリリースステップと、前記ソフトウェアのリリース失敗時には、前記リリースされたソフトウェアを前記退避ファイルによりリリース前のソフトウェアに戻すリリース戻しステップとを備えることを特徴とする。
【００１１】
上記目的を達成するために、請求項１０記載の記憶媒体は、複数のサーバに対してソフトウェアのリリースを行うリリース制御装置のリリース方法を当該リリース制御装置に実行させるプログラムを記憶した記憶媒体において、前記プログラムは、前記複数のサーバのうちリリース対象となるサーバのリリース方式と当該サーバのリリース順序が設定されたサーバリストと当該サーバへリリースするソフトウェアの設定を行う設定ステップと、前記設定されたリリース方式及びサーバリストに基づいて前記ソフトウェアのリリースを行う場合、前記リリース対象となるサーバにおけるリリース対象のソフトウェアを退避ファイルとしてコピーした後に、当該リリース対象のソフトウェアのリリースを行うリリースステップと、前記ソフトウェアのリリース失敗時には、前記リリースされたソフトウェアを前記退避ファイルによりリリース前のソフトウェアに戻すリリース戻しステップとを備えることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、リリースの失敗によって影響を受けるソフトウェアをリリース前の状態に自動で戻すことができ、リリースに要するユーザの作業負荷を軽減することができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
【００１４】
図１は、本発明の実施形態に係るソフトウェアリリースシステムの概略構成を示す図である。
【００１５】
クライアント端末１０１は、当該端末上で実行される端末プログラム１０５を備え、リリース作業を行う作業者（ユーザ）が使用する情報処理装置である。クライアント端末１０１は、ＬＡＮやインターネット等のネットワーク１０２を介してリリースサーバ（リリース制御装置）１０３に接続され、該リリースサーバ１０３との間でデータの送受信が可能である。
【００１６】
リリースサーバ１０３は、当該サーバ上で実行されるメインプログラム１０６を備え、ネットワーク１０２を介して複数のサーバ（例えば業務サーバ）１０４に接続されている。リリースサーバ１０３は、クライアント端末１０１から送信されるリリース計画情報（リリース日時、リリース方法、サーバリスト、リリース物件、リリース状態、リカバリポイントが定義された情報）をリリースに必要なコマンドとして、リリース対象となるサーバ１０４に送信する。リリース物件（リリースファイル）は、対象となるサーバ１０４のＯＳやハードウェアに対するソフトウェアではなく、当該サーバ上で稼働する業務用のソフトウェアやファイル群、これらを保存しているディレクトリ構成を意味する。また、リリースサーバ１０３は、サーバ１０４におけるリリース物件のリリースに必要なリリース実行プログラム１０７をサーバ１０４に送信する。
【００１７】
サーバ１０４は、リリースサーバ１０３からリリース実行プログラム１０７を受信すると共に、リリースに必要なコマンドを受信し、リリース実行プログラム１０７の実行により該コマンドを実行して、リリース物件のリリースを行う。
【００１８】
なお、図１のネットワーク１０２上に接続される各種サーバや各種端末の構成は一例であり、用途や目的に応じてさまざまな構成例があることは言うまでもない。
【００１９】
図２は、図１のクライアント端末１０１、リリースサーバ１０３、及びサーバ１０４の基本的なハードウェア構成を示すブロック図である。
【００２０】
ＣＰＵ２０１は、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。ＣＰＵ２０１は、例えば、ＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、表示装置２１０上での表示を可能とする。また、ＣＰＵ２０１は、表示装置２１０上の不図示のマウスカーソル等でのユーザからの指示の受付を可能とする。
【００２１】
ＲＯＭ２０２或いは記憶装置２１１には、ＣＰＵ２０１が実行する制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）やオペレーティングシステムプログラム（ＯＳ）や、各サーバ或いは各端末が有する機能を実現するために必要な各種プログラム等が記憶されている。ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ＣＰＵ２０１は、後述する処理の実行に際して必要なプログラム等をＲＡＭ２０３にロードして、該プログラムを実行することで各種動作を実現するものである。
【００２２】
入力コントローラ２０５は、キーボード（ＫＢ）やマウス等のポインティングデバイス（ＰＤ）を含むＫＢ／ＰＤ２０９からの入力を制御する。ビデオコントローラ２０６は、ＣＲＴディスプレイや液晶ディスプレイ等から成る表示装置２１０への表示を制御する。
【００２３】
メモリコントローラ２０７は、ハードディスク（ＨＤ）やフロッピー（登録商標）ディスク（ＦＤ）、或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等から成る記憶装置２１１へのアクセスを制御する。記憶装置２１１には、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、各種データ等を記憶する。
【００２４】
通信Ｉ／Ｆコントローラ２０８は、外部のネットワーク１０２に接続して他のサーバや端末との通信を行うものであり、例えば、ＴＣＰ／ＩＰを用いたインターネット通信等が可能である。
【００２５】
クライアント端末１０１とリリースサーバ１０３では、リリース方法（リリース方式）の作成、リリースに必要な対象サーバ（例えば、サーバ１０４）とそのリリース順の作成、及びリリース計画の作成が行われる。本実施形態におけるリリース方式については、リリースで使用する複数のコマンドが下記実行順で設定される。
【００２６】
（１）コマンド１（リリース前処理）は、アプリケーション停止前の前処理コマンドである。
（２）コマンド２（アプリケーション停止）は、アプリケーションを停止するコマンドである。
（３）コマンド３（ファイル置換前処理）は、ファイル置換を行う前の前処理コマンドである。
（４）コマンド４（ファイル置換）は、ファイル置換を行うコマンドである。
（５）コマンド５（ファイル置換後処理）は、ファイル置換を行った後の後処理コマンドである。
（６）コマンド６（アプリケーション起動）は、アプリケーションを起動するコマンドである。
（７）コマンド７（リリース後処理）は、アプリケーション起動後の後処理コマンドである。
【００２７】
本実施形態における対象サーバについては、リリースサーバ１０３に保存されているサーバ一覧を元に予めリリースする対象サーバが決定され、そのサーバリストが作成される。そのとき、リリースする対象サーバの順番も決定される。なお、リリースサーバ１０３に保存されているサーバ一覧については、管理者が予めリリースサーバ１０３に登録するものとする。
【００２８】
リリース計画については、作成されたリリース方式及び対象サーバのサーバリストに基づいて、リリース日やリリースを実行する時間、リリース物件を設定することで作成される。リリースは、作成されたリリース計画を表すリリース計画情報を元に行われる。
【００２９】
まず、クライアント端末１０１とリリースサーバ１０３により実行されるリリース方式の作成、更新、削除処理（以下、「リリース方式の作成処理」と呼ぶ）について図２１、図３〜図５、図１７を参照して説明する。
【００３０】
図２１は、クライアント端末１０１とリリースサーバ１０３により実行されるリリース方式の作成処理の一例を示すフローチャートである。図３〜図５は、リリース方式作成処理時にクライアント端末１０１の表示装置２１０に表示されるリリース方式作成画面の一例を示す図である。図１７は、リリースサーバ１０３に格納されたリリース方式テーブルの一例を示す図である。
【００３１】
図２１において、クライアント端末１０１は、端末プログラム１０５の実行により、図３に示すリリース方式作成画面３０１を表示し、リリースサーバ１０３にリリース方式名のリストを要求する（ステップＳ１００）。
【００３２】
リリースサーバ１０３は、記憶装置２１１等に保存されている図１７に示すリリース方式テーブル１７００からｉｎｄｅｘとリリース方式名を検索し、その検索結果をクライアント端末１０１へ送信する（ステップＳ１０２）。
【００３３】
リリース方式テーブル１７００は、リリース方式を一意に識別するためのｉｎｄｅｘと、１つのリリース方式に対して複数の実行コマンドが設定された場合のそれぞれを識別するためのｓｕｂｉｎｄｅｘと、リリース方式名と、実行コマンド名と、パラメータと、戻し時実行フラグとで構成される。リリース方式テーブル１７００には、各コマンドのパラメータや、現在リリースされているバージョンの直近にリリースされたバージョンへ戻すバージョン戻しの際に実行するコマンドの戻し時実行フラグが設定される。戻し時実行フラグは、コマンドリストの命令がすべて完了していない場合に適用され、後述する戻しリリース用のリリースシナリオファイル作成時に実行するコマンドを判別するために使用される。
【００３４】
リリースシナリオファイルとは、図２０（ａ）に示すように、サーバがリリースする順番に並んでおり、各サーバにリリース方式に対して定義したコマンドが記述されたファイルである。戻しリリース用のリリースシナリオファイルは、図２０（ｂ）や図２０（ｃ）に示すように、リリースが失敗したサーバ及びリリースが完了したサーバに対して適用されるリリースシナリオファイルである。これらの詳細については後述する。
【００３５】
コマンドリスト新規作成時の戻し時実行フラグには、デフォルトでリリース前処理（コマンド１）、アプリケーション停止（コマンド２）、ファイル置換前処理（コマンド３）に「スキップ」が設定され、ファイル置換（コマンド４）、ファイル置換後処理（コマンド５）、アプリケーション開始（コマンド６）、リリース後処理（コマンド７）に「実行」が設定される（図１７参照）。これらの情報は、リリース時にリリースシナリオファイルを作成する際に各サーバに展開される情報である。なお、この情報は、図３のリリース方式作成画面３０１で作成される。
【００３６】
図２１に戻り、クライアント端末１０１は、受信した検索結果をリリース方式作成画面３０１上のリリース方式一覧３０２に表示する（ステップＳ１０４）。このとき、ｉｎｄｅｘとリリース方式名が重複しないように、リリース方式テーブル１７００に保存されているすべての情報が表示される。また、ｉｎｄｅｘとリリース方式名の組み合わせはクライアント端末１０１内のＲＡＭ２０３上に保持され、リリース方式一覧３０２にはリリース方式名のみが表示される（図３参照）。
【００３７】
リリース方式作成画面３０１上でクリアボタン３０３が押された場合（ステップＳ１０５でＹＥＳ）、クライアント端末１０１は、図４（ａ）に示すように、リリース方式欄３０７、コマンドリスト一覧３０８のコマンド名、パラメータを空白にし、戻しフラグを初期状態（リリース前処理、アプリケーション停止、ファイル置換前処理を「スキップ」にし、それ以外を「実行」にする）にして、画面を初期状態にする（ステップＳ１０７）。
【００３８】
次に、クライアント端末１０１は、図４（ｂ）に示すように、作成するリリース方式名（例えば、「新規リリース方式」）の入力をリリース方式作成画面３０１上のリリース方式欄３０７で受け付ける。また、上述したリリースに使用するコマンドの入力を、リリース前処理、アプリケーション停止、ファイル置換前処理、ファイル置換、ファイル置換後処理、アプリケーション起動、リリース後処理の順になるように、コマンドリスト一覧３０８で受け付ける。さらに、それらのコマンドで必要なパラメータの入力を受け付ける。
【００３９】
コマンドリスト一覧３０８の戻しフラグは、現在リリースされているバージョンの直近にリリースされたバージョンへ戻す必要が生じた場合に実行するコマンドを決定するためのフラグである。クライアント端末１０１は、バージョン戻しで実行するコマンドのフラグの入力をコマンドリスト一覧３０８で受け付ける。
【００４０】
図２１に戻り、リリース方式作成画面３０１上で作成ボタン３０４が押された場合（ステップＳ１０６でＹＥＳ）、内部で採番されたｉｎｄｅｘをキーにして、コマンドリスト一覧３０８に入力された情報がクライアント端末１０１からリリースサーバ１０３に送信され、リリース方式テーブル１７００に追加保存するように要求される。リリースサーバ１０３は、受信したリリース方式の情報をリリース方式テーブル１７００に追加保存する（ステップＳ１０８）。
【００４１】
リリース方式が作成された後、クライアント端末１０１は、リリースサーバ１０３に保存されたリリース方式テーブル１７００からｉｎｄｅｘとリリース方式名を検索し、図４（ｃ）に示すように、検索結果をリリース方式一覧３０２に表示する。
【００４２】
リリース方式を更新する場合は、図５（ｄ）に示すように、リリース方式作成画面３０１において、ユーザがリリース方式一覧３０２に表示されているリリース方式を選択する。クライアント端末１０１は、その選択されたリリース方式に対応するＲＡＭ２０３に記憶されたｉｎｄｅｘをリリースサーバ１０３に送信し、該ｉｎｄｅｘをキーにしてリリース方式テーブル１７００を検索し、その検索結果をリリースサーバ１０３から受信してリリース方式欄３０７及びコマンドリスト一覧３０８に表示し、修正入力を待つ。例えば、図５（ｅ）に示すように、コマンドリスト一覧３０８に示されるコマンド名（コマンド修正）、パラメータ（パラメータ修正）が、ユーザによって修正される。
【００４３】
図５（ｆ）に示すリリース方式作成画面３０１上で保存ボタン３０５が押された場合（ステップＳ１１０でＹＥＳ）、クライアント端末１０１は、表示されているリリース方式に対応するＲＡＭ２０３に記憶されたｉｎｄｅｘとリリース方式欄３０７とコマンドリスト一覧３０８の情報がクライアント端末１０１からリリースサーバ１０３に送信される。リリースサーバ１０３は、受信したリリース方式の情報のｉｎｄｅｘを元にリリース方式テーブル１７００の内容を更新する（図２１のステップＳ１１２）。
【００４４】
リリース方式を削除する場合、更新時と同じようにリリース方式作成画面３０１において、ユーザがリリース方式一覧３０２に表示されているリリース方式を選択する。クライアント端末１０１は、その選択されたリリース方式に対応するＲＡＭ２０３に記憶したｉｎｄｅｘをリリースサーバ１０３に送信し、該ｉｎｄｅｘをキーにしてリリース方式テーブル１７００を検索し、その検索結果をリリースサーバ１０３から受信してリリース方式欄３０７及びコマンドリスト一覧３０８に表示し、削除を待つ。
【００４５】
リリース方式作成画面３０１上で削除ボタン３０６が押下されると（図２１のステップＳ１１４でＹＥＳ）、現在表示されているリリース方式に対応するｉｎｄｅｘがクライアント端末１０１からリリースサーバ１０３に送信され、リリース方式テーブル１７００から送信されたｉｎｄｅｘに該当する情報を削除する（図２１のステップＳ１１６）。
【００４６】
次に、クライアント端末１０１とリリースサーバ１０３により実行されるサーバリストの作成、更新、削除処理（以下、「サーバリストの作成処理」と呼ぶ）について図２２、図６〜図１０、図１８を参照して説明する。
【００４７】
図２２は、クライアント端末１０１とリリースサーバ１０３により実行されるサーバリストの作成処理の一例を示すフローチャートである。図６〜図１０は、サーバリスト作成処理時にクライアント端末１０１の表示装置２１０に表示されるサーバリスト作成画面の一例を示す図である。図１８は、リリースサーバ１０３に格納されたサーバリストテーブルの一例を示す図である。
【００４８】
図２２において、クライアント端末１０１は、端末プログラム１０５の実行により、図６に示すサーバリスト作成画面４０１を表示し、リリースサーバ１０３にサーバリスト名を要求する（ステップＳ２００）。
【００４９】
リリースサーバ１０３は、記憶装置２１１等に保存されている図１８に示すサーバリストテーブル１８００からｉｎｄｅｘとサーバリスト名を検索し、その検索結果をクライアント端末１０１へ送信する（ステップＳ２０２）。
【００５０】
図１８に示すサーバリストテーブル１８００は、リリースするサーバ情報で構成されている。サーバ情報は、サーバのリリースする順序を表す情報であり、ｉｎｄｅｘと、ｓｕｂｉｎｄｅｘと、サーバリスト名と、ｒｅｌｅａｓｅＩｎｄｅｘと、サーバ名とが含まれる。
【００５１】
図２２に戻り、クライアント端末１０１は、受信した検索結果をサーバリスト作成画面４０１上のサーバリスト一覧４０３に表示する（ステップＳ２０４）。このとき、ｉｎｄｅｘとサーバリスト名が重複しないようにサーバリストテーブル１８００に保存されているすべての情報が表示される。また、ｉｎｄｅｘとサーバリスト名の組み合わせはクライアント端末１０１内のＲＡＭ２０３上に保持され、サーバリスト一覧４０３にはサーバリスト名のみが表示される（図６参照）。
【００５２】
次に、クライアント端末１０１は、サーバリストに対応するサーバ名の一覧をリリースサーバ１０３に要求する（ステップＳ２０６）。リリースサーバ１０３は、サーバ一覧の内容をクライアント端末１０１へ送信する。クライアント端末１０１は、受信したサーバ一覧を画面に表示する（ステップＳ２０８）。サーバリスト作成画面４０１上のサーバ一覧４０４には、リリースサーバ１０３に保存されているサーバ一覧の内容が表示される（図６参照）。
【００５３】
サーバリスト作成画面４０１上でクリアボタン４１０が押下された場合（ステップＳ２０９でＹＥＳ）、クライアント端末１０１は、サーバリスト作成画面４０１上のサーバリスト名４０２を空白にし、対象サーバ４０９に表示されたサーバをすべてクリア（削除）して、画面を初期状態にする（ステップＳ２１１）（図６参照）。
【００５４】
サーバリスト作成画面４０１上のサーバ一覧４０４で任意のサーバが選択され、→ボタン４０５が押下されると、サーバ一覧４０４で選択されたサーバが対象サーバ４０９に追加される（図７（ａ）〜図８（ｄ）参照）。対象サーバ４０９にサーバが追加されると、対象サーバ４０９には、追加されたサーバに連番が割り当てられる。この連番がサーバのリリース順序となる。連番の番号が同じ場合は、同時にリリースが行われる。
【００５５】
サーバリスト作成画面４０１上の対象サーバ４０９で任意のサーバが選択され、←ボタン４０６が押下されると、対象サーバ４０９で選択されたサーバが対象サーバ４０９から削除される。対象サーバ４０９からサーバが削除されると、対象サーバ４０９には、サーバの連番の再割り当てが行われる。
【００５６】
サーバリスト作成画面４０１上の対象サーバ４０９で任意のサーバが選択され、同時ボタン４０７が押下されると、選択されたサーバの連番を１つ上のサーバと同じ連番に割り当て、それ以降のサーバの連番の再割り当てが行われる（図８（ｅ）参照）。
【００５７】
サーバリスト作成画面４０１上の対象サーバ４０９で任意のサーバが選択され、クリアボタン４０８が押下されると、対象サーバ４０９に表示されたサーバがすべてクリア（削除）される。
【００５８】
図２２に戻り、サーバリスト作成画面４０１上で作成ボタン４１１が押された場合（ステップＳ２１０でＹＥＳ）、内部で採番されたｉｎｄｅｘをキーにしてサーバリスト名４０２と対象サーバ４０９の情報がクライアント端末１０１からリリースサーバ１０３に送信され、サーバリストテーブル１８００に追加保存するように要求される。リリースサーバ１０３は、受信したサーバリストの情報をサーバリストテーブル１８００に追加保存する（ステップＳ２１２）。
【００５９】
サーバリストが作成された後、クライアント端末１０１は、リリースサーバ１０３に保存されたサーバリストテーブル１８００からｉｎｄｅｘとサーバリスト名を検索し、図８（ｆ）に示すように、検索結果をサーバリスト一覧４０３に表示する。
【００６０】
サーバリストを更新または削除する場合は、図９（ｇ）に示すように、サーバリスト作成画面４０１において、ユーザがサーバリスト一覧４０３に表示されているサーバリストを選択する。クライアント端末１０１は、その表示されているサーバリストに対応するＲＡＭ２０３に記憶されたｉｎｄｅｘをリリースサーバ１０３に送信し、該ｉｎｄｅｘをキーにしてサーバリストテーブル１８００を検索し、その検索結果をリリースサーバ１０３から受信してサーバリスト名４０２と対象サーバ４０９に表示する。
【００６１】
サーバリスト作成画面４０１上で保存ボタン４１２が押された場合（ステップＳ２１４でＹＥＳ）、表示されているサーバリストに対応するｉｎｄｅｘとサーバリスト名４０２と対象サーバ４０９の情報がクライアント端末１０１からリリースサーバ１０３に送信され、サーバリストテーブル１８００が更新される（図２２のステップＳ２１６）（図９（ｇ）〜図１０（ｋ）参照）。
【００６２】
サーバリスト作成画面４０１上で削除ボタン４１３が押された場合、表示されているサーバリストのｉｎｄｅｘがクライアント端末１０１からリリースサーバ１０３に送信され、サーバリストテーブル１８００から送信されたｉｎｄｅｘに該当する情報が削除される（ステップＳ２２０）。
【００６３】
次に、クライアント端末１０１とリリースサーバ１０３により実行されるリリース計画情報の作成、更新、削除処理（以下、「リリース計画情報の作成処理」と呼ぶ）について図２３、図１１〜図１５、図１９を参照して説明する。
【００６４】
図２３は、クライアント端末１０１とリリースサーバ１０３により実行されるリリース計画情報の作成処理の一例を示すフローチャートである。図１１〜図１５は、リリース計画情報の作成処理時にクライアント端末１０１の表示装置２１０に表示されるリリース計画作成画面の一例を示す図である。図１９は、リリースサーバ１０３に格納されたサーバリストテーブルの一例を示す図である。
【００６５】
図２３において、クライアント端末１０１は、端末プログラム１０５の実行により、図１１（ａ）に示すリリース計画作成画面５０１を表示し、リリースサーバ１０３にリリース方式名を要求する（ステップＳ３００）。
【００６６】
リリースサーバ１０３は、記憶装置２１１等に保存されているリリース方式テーブル１７００からｉｎｄｅｘとリリース方式名を検索し、その検索結果をクライアント端末１０１へ送信する（ステップＳ３０２）。
【００６７】
クライアント端末１０１は、受信した検索結果のｉｎｄｅｘとリリース方式をＲＡＭ２０３に記憶し、図１１（ｂ）に示すように、リリース方式名のリストをリリース方式５０４にプルダウン表示する（ステップＳ３０４）。リリース方式５０４のプルダウンメニューでリリース方式が選択されると、選択されたリリース方式名が表示される。そして、選択されたリリース方式名に対応するＲＡＭ２０３に記憶されたｉｎｄｅｘがクライアント端末１０１からリリースサーバ１０３に送信され、該ｉｎｄｅｘをキーにしてリリース方式テーブル１７００が検索され、その検索結果がクライアント端末１０１に送信される。そして、リリース計画作成画面５０１上の実行コマンド５１５に検索結果のコマンドリストが表示される（図１１（ｂ）参照）。
【００６８】
次に、クライアント端末１０１はリリースサーバ１０３にサーバリスト名を要求する。
【００６９】
リリースサーバ１０３は、記憶装置２１１等に保存されているサーバリストテーブル１８００からｉｎｄｅｘとサーバリスト名を検索し、その検索結果をクライアント端末１０１へ送信する（ステップＳ３０６）。
【００７０】
クライアント端末１０１は、受信した検索結果のｉｎｄｅｘとサーバリスト名をＲＡＭ２０３に記憶し、図１１（ｃ）に示すように、サーバリスト名のリストを対象サーバ５０５にプルダウン表示する（ステップＳ３０８）。対象サーバ５０５のプルダウンメニューでサーバリストが選択されると、選択されたサーバリスト名が表示される。そして、選択されたサーバリスト名のｉｎｄｅｘがクライアント端末１０１からリリースサーバ１０３に送信され、該ｉｎｄｅｘをキーにしてサーバリストテーブル１８００が検索され、その検索結果がクライアント端末１０１に送信される。そして、リリース計画作成画面５０１上のサーバ一覧５１０に検索結果のサーバリストが表示される（図１１（ｃ）参照）。
【００７１】
リリース計画作成画面５０１において、リリース物件格納場所５０６のボタンがユーザによって押下されると、図１２（ｄ）に示すように、フォルダ選択画面５１９が表示され、リリース物件が格納されているフォルダを選択することが可能となる。これにより、リリース対象となるサーバへリリースするリリース物件を選定することができる。フォルダ選択画面５１９には、トップディレクトリに設定されているフォルダ配下のフォルダ構成をツリー状にして、フォルダツリー５２０が表示され、ユーザによって選択されたフォルダの色が反転する（図１２（ｄ）参照）。
【００７２】
フォルダ選択画面５１９において、ＯＫボタン５２１が押下されると、選択されたフォルダまでのフルパスをリリース計画作成画面５０１に返す。フォルダ選択画面５１９で選択されたフォルダのパスがリリース物件格納場所５０６に表示される（図１２（ｅ）参照）。一方、フォルダ選択画面５１９上でキャンセルボタン５２２が押下されると空白のパスをリリース計画作成画面５０１に返す。
【００７３】
リリース計画作成画面５０１では、↑ボタン５１１が押下されると、サーバ一覧５１０で選択されているサーバ名が１つ上へ移動する（図１３（ｆ）〜図１３（ｈ）参照）。一方、リリース計画作成画面５０１上で↓ボタン５１２が押下されると、サーバ一覧５１０で選択されているサーバ名が１つ下へ移動する（図１４（ｉ）〜図１４（ｊ）参照）。リリース計画作成画面５０１上で同時ボタン５１３が押下されると、サーバ一覧５１０で選択されているサーバ名の番号を１つ上の番号と同じにする。選択されたサーバ名以降の番号が採番しなおされる（図１４（ｊ）、図１４（ｋ）参照）。リリース計画作成画面５０１上で戻すボタン５１４が押下されると、サーバ一覧で変更した内容が変更する前に戻される（図１２（ｅ）に示す画面に戻る）。
【００７４】
リリース計画作成画面５０１上で応答ボタン５１６が押下されると、実行コマンド５１５で選択されているコマンドの下に応答コマンドが挿入される（図１５（ｌ）〜図１５（ｍ）参照）。応答コマンドは、リリースサーバ１０３からクライアント端末１０１に送信され、リリースを継続するか、リリース失敗にするかユーザに選択させるためのコマンドである。リリース計画作成画面５０１上で待機ボタン５１７が押下されると、実行コマンド５１５で選択されているコマンドの下に待機コマンドが挿入される（図１５（ｎ）参照）。待機コマンドは、コマンド間で待機が必要な場合、秒数を指定して待機させるコマンドである。リリース計画作成画面５０１上で戻すボタン５１８が押下されると、実行コマンド５１５に対して変更した内容を変更する前に戻す（図１２（ｅ）の示す画面に戻る）。
【００７５】
図２３に戻り、クライアント端末１０１は、リリース計画作成画面５０１が新規作成として表示されているかまたは既存情報の表示で表示されているかを判定する（ステップＳ３１０）。例えば、リリース計画一覧画面６０１に表示されているリリース計画情報から起動された場合、起動の引数にｉｎｄｅｘが渡されるため、そのリリース計画情報のｉｎｄｅｘを元に既存の情報が表示される。そのｉｎｄｅｘが無い場合は新規作成と判断される。新規作成として起動された場合はそのまま画面を表示する（ステップＳ３１２）（図１１（ａ）参照）。既存情報の参照として起動された場合、リリースサーバ１０３に既存情報を要求する。
【００７６】
リリース計画作成画面５０１において、作成ボタン５０７が押された場合、内部で採番されたｉｎｄｅｘをキーにして、入力されたリリース計画情報がクライアント端末１０１からリリースサーバ１０３に送信され（ステップＳ３１８）、図１９に示すリリース計画テーブル１９００に新規作成し（ステップＳ３２０）、リリース計画作成画面５０１を閉じる。
【００７７】
図１９において、リリース計画テーブル１９００は、上述したリリース計画情報で構成されている。具体的には、リリース計画情報には、ｉｎｄｅｘと、リリース日時と、使用するサーバリスト（サーバリストテーブルのｉｎｄｅｘ）と、使用するリリース方式（リリース方式テーブルのｉｎｄｅｘ）と、リリースするファイル（ファイルが存在するディレクトリまでのフルパス）と、リリース状態と、リカバリポイントとが含まれる。
【００７８】
図２３に戻り、ステップＳ３１０で新規作成でないと判定された場合、リリースサーバ１０３は、クライアント端末１０１から要求された既存情報をリリース計画テーブル１９００から検索し、その検索結果をクライアント端末１０１に送信する（ステップＳ３１４）。クライアント端末１０１は、受信した検索結果をＲＡＭ２０３に記憶すると共に、画面に表示する（ステップＳ３１６）（図１２（ｅ）参照）。
【００７９】
リリース計画作成画面５０１上で保存ボタン５０８が押された場合、表示されているリリース計画情報に対応するｉｎｄｅｘとリリース計画情報がクライアント端末１０１からリリースサーバ１０３に送信され（ステップＳ３２２）、リリース計画テーブル１９００を送信されたリリース計画情報のｉｎｄｅｘに該当する情報を更新し（ステップＳ３２４）、リリース計画作成画面５０１を閉じる。
【００８０】
リリース計画作成画面５０１上で削除ボタン５０９が押された場合、表示されているリリース計画情報に対応するｉｎｄｅｘがクライアント端末１０１からリリースサーバ１０３に送信され（ステップＳ３２６）、リリース計画テーブル１９００から送信されたリリース計画情報のｉｎｄｅｘに該当する情報を削除し（ステップＳ３２８）、リリース計画作成画面５０１を閉じる。
【００８１】
図１６は、リリース計画情報を一覧表示及びリリースの開始を行うためのリリース計画一覧画面の一例を示す図である。
【００８２】
リリース計画一覧画面６０１内にある各ボタン（リリース計画新規作成ボタン６０５、リリース方式作成ボタン６０６、サーバリスト作成ボタン６０７、リリース再開ボタン６０８、リリース開始ボタン６０９）については、操作ミスを防ぐために、選択できるボタンが制限される。
【００８３】
リリース計画一覧画面６０１が表示されると、当日の年月日がクライアント端末１０１からリリースサーバ１０３に送信される。リリースサーバ１０３は、受信した年月日をキーにしてリリース計画テーブル１９００から該当するリリース計画情報を検索し、検索結果をクライアント端末１０１に送信する。クライアント端末１０１は、受信した検索結果のリリース計画情報をリリース計画一覧６０４に表示する。このとき、ｉｎｄｅｘとリリース計画情報の組み合わせはＲＡＭ２０３上に保持され、リリース計画一覧６０４にはｉｎｄｅｘ以外のリリース計画情報が表示される。そして、リリース再開ボタン６０８については選択できないようになっている。リリース再開ボタン６０８は、クライアント端末１０１からリリースサーバ１０３にリリース再開を指示するためのボタンである。
【００８４】
リリース計画一覧画面６０１上で検索ボタン６０３が押下されると、リリース日入力欄６０２に入力された年月日がクライアント端末１０１からリリースサーバ１０３に送信される。リリースサーバ１０３は、受信した年月日をキーにしてリリース計画テーブル１９００から該当する情報を検索し、検索結果をクライアント端末１０１に送信する。クライアント端末１０１は、受信した検索結果のリリース計画情報をリリース計画一覧６０４に表示する。
【００８５】
リリース計画一覧画面６０１上でリリース計画新規作成ボタン６０５が押下されると、リリース計画作成画面５０１が表示される（図１１（ａ）参照）。
【００８６】
リリース計画一覧画面６０１上でリリース方式作成ボタン６０６が押下されると、リリース方式作成画面３０１が表示される（図４（ａ）参照）。
【００８７】
リリース計画一覧画面６０１上でサーバリスト作成ボタン６０７が押下されると、サーバリスト作成画面４０１が表示される（図７（ａ）参照）。
【００８８】
リリース計画一覧画面６０１のリリース計画一覧６０４にリスト表示されたリリース計画情報がユーザによって選択（ダブルクリック）されると、リリース計画作成画面５０１が表示され、リリース計画一覧６０４で選択されたリリース計画情報のｉｎｄｅｘがクライアント端末１０１からリリースサーバ１０３に送信される。リリースサーバ１０３は、受信したｉｎｄｅｘをキーにしてリリース計画テーブル１９００から該リリース計画情報のｉｎｄｅｘに該当する情報を検索し、検索結果をクライアント端末１０１に送信する。クライアント端末１０１は、受信した検索結果をリリース日５０２、リリース時間５０３、リリース方式５０４、対象サーバ５０５、リリース物件格納場所５０６、サーバ一覧５１０、実行コマンド５１５にそれぞれ表示する。
【００８９】
リリース計画一覧画面６０１上でリリース開始ボタン６０９が押下されると、リリース計画一覧６０４で選択されているリリース計画情報がクライアント端末１０１からのリリースサーバ１０３に送信され、リリースサーバ１０３はリリース開始を指示する。このとき、検索ボタン６０３、リリース計画一覧６０４、リリース計画新規作成ボタン６０５、リリース方式作成ボタン６０６、サーバリスト作成ボタン６０７、リリース再開ボタン６０８、及びリリース開始ボタン６０９については操作が不可能になる。
【００９０】
クライアント端末１０１は、リリースサーバ１０３からリリースが完了した旨の通知を受けると、リリース計画一覧画面６０１上のリリース計画一覧６０４を最新の情報で再表示する。このとき、検索ボタン６０３、リリース計画一覧６０４、リリース計画新規作成ボタン６０５、リリース方式作成ボタン６０６、及びサーバリスト作成ボタン６０７については操作可能にする。一方、リリース再開ボタン６０８、リリース開始ボタン６０９については操作不可能にする。
【００９１】
また、クライアント端末１０１は、リリースサーバ１０３からリリースが失敗した旨の通知を受けると、リリース計画一覧画面６０１上のリリース計画一覧６０４を最新の情報で再表示する。このとき、検索ボタン６０３、リリース計画一覧６０４、リリース計画新規作成ボタン６０５、リリース方式作成ボタン６０６、サーバリスト作成ボタン６０７、及びリリース開始ボタン６０９については操作不可能にする。一方、リリース再開ボタン６０８については操作可能にする。
【００９２】
リリース計画一覧画面６０１上のリリース計画一覧６０４において、リリース状態が「完了」のリリース計画情報がユーザによって選択された場合、クライアント端末１０１は、検索ボタン６０３、リリース計画一覧６０４、リリース計画新規作成ボタン６０５、リリース方式作成ボタン６０６、及びサーバリスト作成ボタン６０７を操作可能にする。一方、リリース再開ボタン６０８、リリース開始ボタン６０９を操作不可能にする。
【００９３】
リリース計画一覧画面６０１上のリリース計画一覧６０４において、リリース状態が「失敗」のリリース計画情報がユーザによって選択された場合、クライアント端末１０１は、検索ボタン６０３、リリース計画一覧６０４、リリース計画新規作成ボタン６０５、リリース方式作成ボタン６０６、サーバリスト作成ボタン６０７、及びリリース再開ボタン６０８を操作可能にする。一方、リリース開始ボタン６０９を操作不可能にする。
【００９４】
リリース計画一覧画面６０１上のリリース計画一覧６０４において、リリース状態が「未実施」のリリース計画情報がユーザによって選択された場合、クライアント端末１０１は、検索ボタン６０３、リリース計画一覧６０４、リリース計画新規作成ボタン６０５、リリース方式作成ボタン６０６、サーバリスト作成ボタン６０７、及びリリース開始ボタン６０９を操作可能にする。リリース再開ボタン６０８を操作不可能にする。
【００９５】
図２０は、リリースシナリオファイルの構成例を示す図であり、（ａ）は通常のリリースシナリオファイル、（ｂ）はサーバ３のリリースが失敗したときの戻しリリース用のリリースシナリオファイル、（ｃ）はサーバ２，３のリリースが失敗したときの戻しリリース用のリリースシナリオファイルである。
【００９６】
リリースシナリオファイルは、リリース計画テーブル１９００で定義されているリリース方式とサーバリストに基づいて、リリース対象となるサーバ１０４を順番に並べ、各サーバで実行されるコマンド群で構成されている。このリリースシナリオファイルは、リリース時にメインプログラム１０６で動的に作成される。
【００９７】
例えば、図２０（ａ）に示す通常時のリリースシナリオファイルの場合、サーバ１のリリースを行い、次に、サーバ２及びサーバ３に対して同時にリリースを行い、次にサーバ４及びサーバ５に対して同時にリリースを行う。また、バージョン戻し時は、リリースの進捗状況によりリリースシナリオファイルの内容を再構成し、リリースしたサーバのみの情報を作成する。
【００９８】
一方、図２０（ｂ）に示す戻しリリース用のリリースシナリオファイルの場合（１台のリリースに失敗した場合）、リリースが失敗したサーバ３に対してリリースを行う。このとき、サーバ３に実行させるコマンドについては、戻し時実行フラグで１：「実行」になっているコマンドのみが実行される。サーバ３のリリース完了後、図２０（ｂ）に示すリリースシナリオファイルでリリース終了しているサーバ２のリリースを行い、次にサーバ１のリリースを行う。正常にリリースが完了しているサーバは、戻し時実行フラグに関係なくすべてのコマンドを実行する。
【００９９】
図２０（ｃ）に示す戻しリリース用のリリースシナリオファイルの場合（２台のリリースに失敗した場合）、リリースが失敗したサーバ２、サーバ３に対してリリースを行う。このとき、サーバ２、サーバ３に実行させるコマンドについては、戻し時実行フラグが、１：「実行」になっているコマンドのみが実行される。サーバ２、サーバ３のリリース完了後、図２０（ｃ）に示すリリースシナリオファイルでリリース終了しているサーバ１に対してリリースを行う。正常にリリースが完了しているサーバは、戻し時実行フラグに関係なくすべてのコマンドを実行する。
【０１００】
なお、図１７〜図２０に示す各種テーブル及びファイルの構成及びその内容は限定されるものではなく、用途や目的に応じて、さまざまな構成や内容で構成されることは言うまでもない。
【０１０１】
次に、図１のソフトウェアリリースシステムにおけるリリース動作について説明する。
【０１０２】
図２４ａ〜図２４ｅは、リリース動作の一例を示すフローチャートである。図２５は、リリース対象サーバ内のディレクトリ間におけるリリース物件の動きを説明するための図である。図２６は、リリース計画一覧画面６０１上でリリース再開ボタン６０８が押下されたときのリリース動作の一例を示すフローチャートである。図２７（ａ）〜図２８（ｂ）は、リリース動作時にクライアント端末１０１の表示装置２１０に表示される選択画面の一例を示す図である。
【０１０３】
なお、フローチャート中のシナリオステータスについては、ＳＳ１：「通常」、ＳＳ２：「戻し」を表す。リカバリポイントについては、ＲＰ１：「なし」、ＲＰ２：「アプリケーション起動状態チェック」、ＲＰ３：「シナリオの実行開始」、ＲＰ４：「通常のリリースシナリオで失敗」、ＲＰ５：「戻しリリース用のリリースシナリオで失敗」を表す。
【０１０４】
図２４ａにおいて、まず、ユーザは、図１６に示すリリース計画一覧画面６０１上のリリース日入力欄６０２に、リリース日時情報として年月日を入力した後に、検索ボタン６０３を押下してリリース計画情報の検索を行う。クライアント端末１０１は、リリース日入力欄６０２に入力された年月日に該当するリリース計画情報をリリースサーバ１０３に要求する（ステップＳ４００）。
【０１０５】
リリースサーバ１０３は、クライアント端末１０１から受信した年月日に該当するリリース計画情報をリリース計画テーブル１９００から検索し、検索結果をクライアント端末１０１に送信する（ステップＳ４０２）。
【０１０６】
クライアント端末１０１は、受信した検索結果をリリース計画一覧画面６０１上のリリース計画一覧６０４に表示する（ステップＳ４０４）。次に、リリース計画一覧６０４から任意のリリース計画情報（図１６の例ではリリース計画情報６０４ａ）がユーザにより選択された後、リリース開始ボタン６０９が押下されると（ステップＳ４０６でＹＥＳ）、クライアント端末１０１は、リリース計画一覧６０４で選択されたリリース計画情報（リリース計画情報６０４ａ）に該当するリリース計画の実行をリリースサーバ１０３に指示する（ステップＳ４０７）。
【０１０７】
リリースサーバ１０３は、クライアント端末１０１からリリース計画の実行指示を受けると、該当するリリース計画情報のリリース方式のｉｎｄｅｘとサーバリストのｉｎｄｅｘを元にリリース方式テーブル１７００からリリース方式情報を、サーバリストテーブル１８００からサーバリスト情報を取得すると共に、リリース計画テーブル１９００からリリース物件（リリースファイル）を取得する（ステップＳ４０８）。なお、リリース方式情報は、ｓｕｂｉｎｄｅｘ、リリース方式名、実行コマンド名、パラメータ、戻し時実行フラグで構成される。サーバリスト情報は、ｓｕｂｉｎｄｅｘ、サーバリスト名、ｒｅｌｅａｓｅｉｎｄｅｘ、サーバ名で構成される。なお、リリース物件とはリリース計画テーブル１９００の「リリースするファイル」項目に保存されているディレクトリパス配下にあるディレクトリ構成及びファイル群のことを意味する。
【０１０８】
次に、リリースサーバ１０３は、取得したリリースファイルを、サーバリスト情報を元に、リリース対象サーバであるサーバ１０４にＦＴＰで送信する（ステップＳ４１０）。サーバ１０４では、受信したリリースファイルが所定のディレクトリに一時格納される（図２５の１５０１参照）。
【０１０９】
つづいて、リリースサーバ１０３は、リリース実行プログラム１０７を、サーバリスト情報を元に、リリース対象サーバであるサーバ１０４にＦＴＰで送信する（ステップＳ４１２）。次に、リリースサーバ１０３は、リリース方式情報とサーバリスト情報に基づいてリリースシナリオファイルを作成し、ＲＡＭ２０３に記憶する（ステップＳ４１４）。
【０１１０】
次に、リリースサーバ１０３は、作成したリリースシナリオファイルに対するシナリオステータスをＳＳ１「通常」に初期化してＲＡＭ２０３上に保持する（ステップＳ４１５）。シナリオステータスは、通常のリリースシナリオファイルか、戻しリリース用のリリースシナリオファイルかを示す情報である。つづいて、作成したリリースシナリオファイルに対するリカバリポイントをＲＰ１「なし」に初期化してＲＡＭ２０３上に保持する（ステップＳ４１６）。リカバリポイントは、リリースシナリオの進行状態を示す情報である。
【０１１１】
次に、リリースサーバ１０３は、ＲＡＭ２０３に記憶したリリースシナリオファイルから順番に対象サーバ（サーバ名）とコマンドリストを取り出し（ステップＳ４１８）、リリースすべき対象サーバがあるか否かを判定する（ステップＳ４２０）。リリースシナリオファイルからリリースすべき対象サーバがなくなった場合（ステップＳ４２０でＮＯ）、図２４ｅのステップＳ４７４に進み、リリースサーバ１０３はリリースが完了したと判断し、リリース計画テーブル１９００のリリース状態を「未実施」から「完了」に更新して、クライアント端末１０１にリリースが完了した旨の通知を行う（ステップＳ４７６）。
【０１１２】
クライアント端末１０１は、リリースサーバ１０３からリリース完了の通知を受けて再度リリースサーバ１０３にリリース計画テーブル１９００の検索を要求し、リリース計画一覧画面６０１のリリース計画一覧６０４に最新のリリース計画情報を表示する（ステップＳ４７８）。
【０１１３】
図２４ａに戻り、ステップＳ４２０において、ＲＡＭ２０３に記憶したリリースシナリオファイルにリリースすべき対象サーバが存在する場合（ステップＳ４２０でＹＥＳ）、リリースサーバ１０３は、ＲＡＭ２０３に保持されているリカバリポイントをＲＰ２「アプリケーション起動状態チェック」に設定する（ステップＳ４２２）。そして、リリースサーバ１０３は、サーバ１０４にアプリケーションの起動状態チェックを指示する（ステップＳ４２３）。
【０１１４】
図２４ｂにおいて、サーバ１０４は、リリース実行プログラム１０７を実行し、リリースサーバ１０３からの指示に応じてアプリケーションの起動状態を確認し（ステップＳ４２４）、起動状態がＯＫかＮＧかを判定する（ステップＳ４２６）。なお、起動状態がＮＧとは、アプリケーションが起動していない状態をいい、起動状態がＯＫとは、アプリケーションが起動している状態をいう。
【０１１５】
ステップＳ４２６における判定の結果、起動状態がＮＧであれば（ステップＳ４２６でＮＧ）、サーバ１０４は、アプリケーションの起動状態がＮＧである旨をリリースサーバ１０３に通知する。一方、アプリケーションの起動状態がＯＫであるときは（ステップＳ４２６でＯＫ）、サーバ１０４は、リリースサーバ１０３内のＲＡＭ２０３に保持されているシナリオステータスを確認し、シナリオステータスがＳＳ１かＳＳ２かを判定する（ステップＳ４２８）。
【０１１６】
ステップＳ４２８における判定の結果、シナリオステータスがＳＳ１「通常」の場合は、サーバ１０４は、図２５の１５０２に示すように、サーバ１０４上のアプリケーションがインストールされているディレクトリにあるリリース対象ファイルと同じファイルを退避ファイルのディレクトリ（退避場所）にコピーする。そして、図２５の１５０３に示すように、リリースサーバ１０３から受信したリリースファイルをリリースファイルのディレクトリにコピーし、サーバ１０４からリリースサーバ１０３にアプリケーションの起動状態がＯＫである旨を通知する（ステップＳ４３０）。
【０１１７】
一方、ステップＳ４２８における判定の結果、シナリオステータスがＳＳ２「戻し」の場合は、サーバ１０４は、図２５の１５０５に示すように、退避ファイルのディレクトリにあるファイルをリリースファイルのディレクトリにコピーし、リリースサーバ１０３にアプリケーションの起動状態がＯＫである旨を通知する（ステップＳ４３２）。
【０１１８】
リリースサーバ１０３は、サーバ１０４からの通知を判定する（ステップＳ４３４）。ＮＧである旨の通知を受け取ったと判定した場合、リリースサーバ１０３は、リリース計画テーブル１９００のリリース状態を「失敗」に更新し（ステップＳ４８２）、図２４ｃのステップＳ４８４へ進む。一方、ＯＫである旨の通知を受け取ったと判定した場合は（ステップＳ４３４でＯＫ）、リリースサーバ１０３は、リリースシナリオファイルのコマンドリストからコマンドを取り出し（ステップＳ４３６）、取り出すべきコマンドがあるか否かを判定する（ステップＳ４３８）。コマンドがない場合は、リリースシナリオファイルから対象サーバとコマンドリストを取り出すところから再度実行する（図２４ａのステップＳ４１８）。一方、コマンドがある場合、コマンドの種類を確認する（ステップＳ４４０）。ここでは、（１）応答コマンドか、（２）待機コマンドか、（３）通常のコマンドかについて確認する。
【０１１９】
（１）応答コマンドの場合、リリースサーバ１０３は、クライアント端末１０１に応答コマンドである旨を通知する。
【０１２０】
クライアント端末１０１は、リリースサーバ１０３から応答コマンドの通知を受けると、図２７（ａ）に示す継続／戻し選択画面２７００を表示し、ユーザにリリースの継続か戻しかの選択指示を受け付ける（ステップＳ４４４）。継続指示を受け付けた場合は（ステップＳ４４６で継続）、ステップＳ４３６に戻り、リリースサーバ１０３に次のコマンドを実行するように指示する一方、戻し指示を受け付けた場合は（ステップＳ４４６で戻し）、図２４ｄのステップＳ４６６へ進む。
【０１２１】
（２）待機コマンドの場合、リリースサーバ１０３は、予め設定された所定の時間（数秒）待機して、ステップＳ４３６に戻る。
【０１２２】
（３）通常コマンドの場合、リリースサーバ１０３は、リカバリポイントをＲＰ３「シナリオの実行開始」に設定し（ステップＳ４４８）、ステップＳ４３６で取り出したコマンドを送信して当該コマンドの実行をサーバ１０４に指示する（ステップＳ４５０）。なお、ＲＰ３「シナリオの実行開始」のステータスは、リリースシナリオファイルの使用が開始されたことを示すために設定される。
【０１２３】
図２４ｃにおいて、ステップＳ４５２では、サーバ１０４は、リリースサーバ１０３からコマンド実行の指示を受けると、対象のコマンドを実行する。また、ファイル置換のコマンドを実行する場合は、サーバ１０４は、リリースファイルが格納されているディレクトリ配下のファイルをファイル置換する（図２５の１５０４参照）。実行完了後、コマンド完了と実行結果をリリースサーバ１０３に通知する（ステップＳ４５４）。
【０１２４】
リリースサーバ１０３は、サーバ１０４からコマンドの実行結果を受け取り（ステップＳ４５６）、コマンド実行が成功したか否かの判定を行う（ステップＳ４５８）。実行結果が成功（ＯＫ）の場合は（ステップＳ４５８でＹＥＳ）、図２４ｂのステップＳ４３６へ進み、コマンドリストから次のコマンドの取り出しを行う。一方、実行結果が失敗（ＮＧ）の場合は（ステップＳ４５８でＮＯ）、リリースサーバ１０３は、シナリオステータスを確認し、シナリオステータスがＳＳ１「通常」か、ＳＳ２「戻し」かを判定する（ステップＳ４６０）。シナリオステータスがＳＳ２「戻し」の場合は、図２４ｂのステップＳ４８２へ進む。一方、シナリオステータスがＳＳ１「通常」の場合は、図２４ｄのステップＳ４６２へ進み、リリースサーバ１０３からクライアント端末１０１にコマンド実行が失敗した旨を通知する。
【０１２５】
クライアント端末１０１は、リリースサーバ１０３からコマンド実行失敗の通知を受け取ると、図２７（ｂ）に示す戻し／失敗選択画面２７１０を表示し、ユーザにリリースの戻しかリリース失敗かの選択指示を受け付ける（ステップＳ４６２）。リリース失敗の指示を受け付けた場合（ステップＳ４６４で失敗）、クライアント端末１０１からリリースサーバ１０３にリリース失敗の指示が行われる。クライアント端末１０１からリリース失敗の指示を受けた場合、リリースサーバ１０３は、リリース計画テーブル１９００のリリース状態を「失敗」に更新する（ステップＳ４８２）。
【０１２６】
一方、戻し指示を受け付けた場合（ステップＳ４６４で戻し）、クライアント端末１０１からリリースサーバ１０３に戻しの指示が行われる。クライアント端末１０１から戻しの指示を受けた場合、リリースサーバ１０３は、シナリオステータスをＳＳ２「戻し」に設定し（ステップＳ４６６）、戻しリリース用のリリースシナリオファイルの作成を開始する（ステップＳ４６８）。
【０１２７】
次に、リリースサーバ１０３は、コマンド実行に失敗したサーバを戻しリリース用のリリースシナリオファイルの最初に設定し、コマンドリストで戻し時実行フラグが実行になっているコマンドのみを実行するように設定する（ステップＳ４７０）。次に、失敗したサーバより前にリリースを実行し、リリースが完了しているサーバを失敗したサーバから逆の順で戻しリリース用のリリースシナリオファイルに設定する。このとき、実行するコマンドを通常のリリースシナリオファイルで実行したコマンドと同じにする（ステップＳ４７２）。
【０１２８】
戻しリリース用のリリースシナリオファイルの作成が完了したときは、図２４ａのステップＳ４１６へ進み、通常のリリースシナリオファイルと同じように、リリースを開始する。
【０１２９】
図２４ｃにおいて、リリースサーバ１０３は、ＲＡＭ２０３上に保持されたリカバリポイントがＲＰ３かＲＰ３以外かを判定する（ステップＳ４８４）。ＲＡＭ２０３上に保持されたリカバリポイントがＲＰ３「シナリオの実行開始」以外の場合、リリースサーバ１０３は、ＲＡＭ２０３上に保持されたリカバリポイントでリリース計画テーブル１９００のリカバリポイントを更新し、クライアント端末１０１にリリースが失敗した旨の通知を行う（ステップＳ４９２）。
【０１３０】
ＲＡＭ２０３上に保持されたリカバリポイントがＲＰ３「シナリオの実行開始」の場合、ステップＳ４８６へ進み、シナリオステータスを確認する。シナリオステータスがＳＳ１「通常」の場合、ＲＡＭ２０３に記憶したリカバリポイントにＲＰ４「通常のリリースシナリオで失敗」を設定する（ステップＳ４８８）。シナリオステータスがＳＳ２「戻し」の場合、ＲＡＭ２０３に記憶したリカバリポイントにＲＰ５「戻しリリース用のリリースシナリオで失敗」を設定する（ステップＳ４９０）。
【０１３１】
リリースサーバ１０３は、上述の設定が完了したとき、ＲＡＭ２０３上に保持されたリカバリポイントでリリース計画テーブル１９００のリカバリポイントを更新し、クライアント端末１０１にリリースが失敗した旨の通知を行う（ステップＳ４９２）。クライアント端末１０１は、該通知を受けてリリースに失敗した旨を画面表示する（ステップＳ４９４）。
【０１３２】
図２６は、リリース失敗時のリリース再開時の処理の一例を示すフローチャートである。なお、フローチャート中のシナリオステータスとリカバリポイントについては、上記図２４ａ〜図２４ｅで説明したものを凡例として使用している。また、本フローチャートは、ステップＳ４９４の後続の処理として位置付けることも可能である。
【０１３３】
図２６において、ユーザがリリース計画一覧画面６０１上でリリース状態が「失敗」のリリース計画情報を選択した後、リリース再開ボタン６０８を押下すると、クライアント端末１０１は、リリースサーバ１０３にリリース再開を指示する（ステップＳ６００）。リリースサーバ１０３は、リリース計画テーブル１９００からリカバリポイントを取得し（ステップＳ６０２）、リカバリポイントがＲＰ２かＲＰ２以外かを判定する（ステップＳ６０４）。
【０１３４】
ステップＳ６０４の判定の結果、リカバリポイントがＲＰ２「アプリケーション起動状態チェック」以外の場合、クライアント端末１０１は、図２８（ａ）に示す続行／スキップ／戻し選択画面２８００を表示し、リリースを続行するか戻しを行うか、失敗したサーバをスキップして継続するかをユーザに要求する（ステップＳ６０６）。このとき、リカバリポイントがＲＰ５「戻しリリース用のリリースシナリオで失敗」した場合、戻しボタンは選択できないようにしておく。
【０１３５】
次に、ステップＳ６０８において、続行が選択された場合、クライアント端末１０１は、失敗したコマンドから実行を再開するようにリリースサーバ１０３に指示する（図２４ｂのステップＳ４５０）。一方、戻しが選択された場合、クライアント端末１０１は、戻しシナリオ作成から再開するようにリリースサーバ１０３に指示する（図２４ｄのステップＳ４６６）。また、スキップが選択された場合、クライアント端末１０１は、リリースに失敗したサーバをスキップして再開するようにリリースサーバ１０３に指示する（図２４ａのステップＳ４１８）。
【０１３６】
ステップＳ６０４の判定の結果、リカバリポイントがＲＰ２「アプリケーション起動状態チェック」の場合、クライアント端末１０１は、図２８（ｂ）に示す続行／戻し選択画面２８１０を表示し、リリースを続行するか戻しを行うかをユーザに要求する（ステップＳ６１０）。
【０１３７】
次に、ステップＳ６１２において、戻しが選択された場合、クライアント端末１０１は、リリースサーバ１０３に戻しシナリオ作成から再開するように指示する（図２４ｄのステップＳ４６６）。一方、続行が選択された場合、クライアント端末１０１は、リリースサーバ１０３にアプリケーションの起動状態チェックから再開するように指示する（図２４ａのステップＳ４２３）。
【０１３８】
上記実施形態によれば、複数のサーバ１０４のうちリリース対象となるサーバのリリース方式と当該サーバのリリース順序が設定されたサーバリストと当該サーバへリリースするソフトウェアの設定を行い、設定されたリリース方式及びサーバリストに基づいてソフトウェアのリリースを行う場合、リリース対象となるサーバにおけるリリース対象のソフトウェアを退避ファイルとしてコピーした後に、当該リリース対象のソフトウェアのリリースを行う。そして、ソフトウェアのリリース失敗時には、リリースされたソフトウェアを退避ファイルによりリリース前のソフトウェアに戻す。これにより、リリースの失敗によって影響を受けるソフトウェアをリリース前の状態に自動で戻すことができ、リリースに要するユーザの作業負荷を軽減することができる。
【０１３９】
本発明の実施態様としてシステムについて説明したが、例えば、装置や方法、プログラムもしくは記憶媒体等の実施態様をとることも可能であり、具体的には、複数の機器から構成されるシステムに適用しても、また、一つの機器からなる装置に適用してもよい。
【０１４０】
上記実施形態では、リリース実行時にリリースが失敗した場合について説明したが、これに限定されず、リリース時に異常が発生した場合であっても、本発明が適用可能であることは云うまでもない。
【０１４１】
また、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１４２】
また、プログラムコードを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等である。または、プログラムコードをネットワークを介してダウンロードしてもよい。
【０１４３】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【０１４４】
更に、前述した実施形態の機能が以下の処理によって実現される場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行う場合である。
【０１４５】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した各実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現する場合も含まれる。この場合、上記プログラムは、該プログラムを記憶した記憶媒体から直接、またはインターネット、商用ネットワーク、若しくはローカルエリアネットワーク等に接続された不図示の他のコンピュータやデータベース等からダウンロードすることにより供給される。
【０１４６】
上記プログラムの形態は、オブジェクトコード、インタプリタにより実行されるプログラムコード、ＯＳ（オペレーティングシステム）に供給されるスクリプトデータ等の形態から成ってもよい。
【図面の簡単な説明】
【０１４７】
【図１】本発明の実施形態に係るソフトウェアリリースシステムの概略構成を示す図である。
【図２】図１のクライアント端末、リリースサーバ、及びサーバの基本的なハードウェア構成を示すブロック図である。
【図３】リリース時に使用されるリリース方式を作成するためのリリース方式作成画面の一例を示す図である。
【図４】リリース方式作成画面の一例を示す図であり、（ａ）はクリアボタンが押下されたときの状態、（ｂ）はリリース方式の情報の入力待ちの状態、（ｃ）は作成ボタンが押下されたときの状態を示す。
【図５】リリース方式作成画面の一例を示す図であり、（ｄ）はリリース方式名が選択されたときの状態、（ｅ）は変更箇所の修正待ちの状態、（ｆ）は保存ボタンが押下されたときの状態を示す。
【図６】リリースする対象のサーバとリリース順番を決めるためのサーバリスト作成画面の一例を示す図である。
【図７】サーバリスト作成画面の一例を示す図であり、（ａ）はサーバリスト名入力時の状態、（ｂ）はサーバ一覧の任意のサーバが選択されたときの状態、（ｃ）は任意のサーバが選択された後に→ボタンが押下されたときの状態を示す。
【図８】サーバリスト作成画面の一例を示す図であり、（ｄ）はサーバ一覧の任意のサーバが選択された後に→ボタンが２回押下されたときの状態、（ｅ）は対象サーバの任意のサーバが選択された後に同時ボタンが押下されたときの状態、（ｆ）は作成ボタンが押下されたときの状態を示す。
【図９】サーバリスト作成画面の一例を示す図であり、（ｇ）はサーバリスト一覧の任意のサーバが選択されたときの状態、（ｈ）は対象のサーバが選択されたときの状態、（ｉ）はサーバ一覧の任意のサーバが選択された後に→ボタンが押下されたときの状態を示す。
【図１０】サーバリスト作成画面の一例を示す図であり、（ｊ）は対象サーバの任意のサーバが選択された後に←ボタンが押下されたときの状態、（ｋ）は保存ボタンが押下されたときの状態を示す。
【図１１】リリース計画作成画面の一例を示す図であり、（ａ）は新規作成時の状態、（ｂ）はリリース方式が選択されたときの状態、（ｃ）は対象サーバが選択されたときの状態を示す。
【図１２】リリース計画作成画面の一例を示す図であり、（ｄ）はリリースファイル格納場所のフォルダ選択画面が表示された状態、（ｅ）はリリースファイルが選択されたときの状態を示す。
【図１３】リリース計画作成画面の一例を示す図であり、（ｆ）はサーバ一覧から任意のサーバ名が選択されたときの状態、（ｇ）は↑ボタンが押下されたときの状態、（ｈ）は↑ボタンが２回押下されたときの状態を示す。
【図１４】リリース計画作成画面の一例を示す図であり、（ｉ）はサーバ一覧から任意のサーバ名が選択されたときの状態、（ｊ）は↓ボタンが２回押下されたときの状態、（ｋ）は同時ボタンが押下されたときの状態を示す。
【図１５】リリース計画作成画面の一例を示す図であり、（ｌ）は実行コマンドから任意のコマンド名が選択されたときの状態、（ｍ）は応答ボタンが押下されたときの状態、（ｎ）は待機ボタンが押下されたときの状態を示す。
【図１６】リリース計画一覧画面の一例を示す図である。
【図１７】リリース方式テーブルの一例を示す図である。
【図１８】サーバリストテーブルの一例を示す図である。
【図１９】リリース計画テーブルの一例を示す図である。
【図２０】リリースシナリオファイルの構成例を示す図であり、（ａ）は通常のリリースシナリオファイル、（ｂ）はサーバ３のリリースが失敗したときの戻しリリース用のリリースシナリオファイル、（ｃ）はサーバ２，３のリリースが失敗したときの戻しリリース用のリリースシナリオファイルである
【図２１】クライアント端末とリリースサーバにより実行されるリリース方式の作成処理の一例を示すフローチャートである。
【図２２】クライアント端末とリリースサーバにより実行されるサーバリストの作成処理の一例を示すフローチャートである。
【図２３】クライアント端末とリリースサーバにより実行されるリリース計画情報の作成処理の一例を示すフローチャートである。
【図２４ａ】リリース動作の一例を示すフローチャートである。
【図２４ｂ】リリース動作の一例を示すフローチャートである。
【図２４ｃ】リリース動作の一例を示すフローチャートである。
【図２４ｄ】リリース動作の一例を示すフローチャートである。
【図２４ｅ】リリース動作の一例を示すフローチャートである。
【図２５】リリース対象サーバ内のディレクトリ間におけるリリース物件の動きを説明するための図である。
【図２６】リリース計画一覧画面上でリリース再開ボタンが押下されたときのリリース動作の一例を示すフローチャートである。
【図２７】リリース動作時にクライアント端末の表示装置に表示される選択画面の一例を示す図であり、（ａ）は継続／戻し選択画面、（ｂ）は戻し／失敗選択画面を示す。
【図２８】リリース動作時にクライアント端末の表示装置に表示される選択画面の一例を示す図であり、（ａ）は継続／スキップ／戻し選択画面、（ｂ）は継続／戻し選択画面を示す。
【符号の説明】
【０１４８】
１０１  クライアント端末
１０２  ネットワーク
１０３  リリースサーバ
１０４  サーバ
１０５  端末プログラム
１０６  メインプログラム
１０７  リリース実行プログラム
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
２１０  表示装置
２１１  記憶装置
【図１】
2010117980.tif 000003
【図２】
2010117980.tif 000004
【図３】
2010117980.tif 000005
【図４】
2010117980.tif 000006
【図５】
2010117980.tif 000007
【図６】
2010117980.tif 000008
【図７】
2010117980.tif 000009
【図８】
2010117980.tif 000010
【図９】
2010117980.tif 000011
【図１０】
2010117980.tif 000012
【図１１】
2010117980.tif 000013
【図１２】
2010117980.tif 000014
【図１３】
2010117980.tif 000015
【図１４】
2010117980.tif 000016
【図１５】
2010117980.tif 000017
【図１６】
2010117980.tif 000018
【図１７】
2010117980.tif 000019
【図１８】
2010117980.tif 000020
【図１９】
2010117980.tif 000021
【図２０】
2010117980.tif 000022
【図２１】
2010117980.tif 000023
【図２２】
2010117980.tif 000024
【図２３】
2010117980.tif 000025
【図２４ａ】
2010117980.tif 000026
【図２４ｂ】
2010117980.tif 000027
【図２４ｃ】
2010117980.tif 000028
【図２４ｄ】
2010117980.tif 000029
【図２４ｅ】
2010117980.tif 000030
【図２５】
2010117980.tif 000031
【図２６】
2010117980.tif 000032
【図２７】
2010117980.tif 000033
【図２８】
2010117980.tif 000034