(57)【要約】【課題】テンプレートに定義された制約条件を満たさない修正に対して警告を通知する。【解決手段】ストレージ装置を管理するシナリオを実行するシナリオ実行部が設けられた業務サーバと、前記テンプレートを管理するテンプレート管理部及び前記シナリオを管理するシナリオ管理部を備える管理サーバと、を有するストレージシステムにおけるシナリオの修正方法であって、前記シナリオの修正がテンプレートの変数に関連する箇所であるか否かを判定する手順と、前記シナリオの修正に係る変数に制約条件があるか否かを判定する手順と、前記シナリオの修正が制約条件を満たしているか否かを判定する手順と、前記修正がテンプレートの変数に関連する箇所であり、前記修正に係る変数に制約条件があり、かつ、前記修正が制約条件を満たしていなければ、当該シナリオの修正はテンプレートに規定された条件を満たさないと判定する手順と、を含む。【選択図】  図５
2005339213.tif 000002
【特許請求の範囲】
【請求項１】
ストレージ装置を管理するシナリオを実行するシナリオ実行部が設けられた業務サーバと、前記シナリオ、前記シナリオの生成元であるテンプレート及び前記シナリオの生成元のテンプレートとの関係を含むシナリオ・テンプレート対応情報を記憶する記憶部、前記テンプレートを管理するテンプレート管理部並びに前記シナリオを管理するシナリオ管理部を備える管理サーバと、を有するストレージシステムにおいて実行されるシナリオの修正方法であって、
修正対象のシナリオを特定する手順と、
前記シナリオ・テンプレート対応情報を参照して、前記修正対象のシナリオが生成される元となったテンプレートが存在するか否かを判定し、当該シナリオの生成元となったテンプレートを特定する手順と、
当該特定されたテンプレートの内容を解析する手順と、
前記シナリオの修正がテンプレートの変数に関連する箇所であるか否かを判定する手順と、
前記シナリオの修正に係る変数に制約条件があるか否かを判定する手順と、
前記シナリオの修正が制約条件を満たしているか否かを判定する手順と、
前記シナリオの修正がテンプレートが意図しているものであるか否かを判定する手順と、
当該修正がテンプレートの変数に関連する箇所であり、当該修正に係る変数に制約条件があり、かつ、当該修正が制約条件を満たしていなければ、ユーザに該変数に関する制約条件を提示する手順と、
当該修正がテンプレートの変数に関連する箇所でなく、かつ、当該修正がテンプレートが意図していないものであれば、ユーザへ警告を通知する手順と、
当該シナリオに検証されていない箇所がなければ修正後のシナリオを登録する手順と、を含むシナリオの修正方法。
【請求項２】
ストレージ装置を管理するシナリオを実行するシナリオ実行部が設けられた業務サーバと、前記テンプレートを管理するテンプレート管理部及び前記シナリオを管理するシナリオ管理部を備える管理サーバと、を有するストレージシステムにおいて実行されるシナリオの修正方法であって、
前記シナリオの修正がテンプレートの変数に関連する箇所であるか否かを判定する手順と、
前記シナリオの修正に係る変数に制約条件があるか否かを判定する手順と、
前記シナリオの修正が制約条件を満たしているか否かを判定する手順と、
前記修正がテンプレートの変数に関連する箇所であり、前記修正に係る変数に制約条件があり、かつ、前記修正が制約条件を満たしていなければ、当該シナリオの修正はテンプレートに規定された条件を満たさないと判定する手順と、を含むシナリオの修正方法。
【請求項３】
前記修正がテンプレートに規定された条件を満たさないと判定された場合に、ユーザに該変数に関する制約条件を提示する手順を含む請求項２に記載のシナリオの修正方法。
【請求項４】
前記シナリオの生成元のテンプレートの変数に関する箇所が修正されたとき、ユーザに該変数に関する制約条件を提示する請求項３に記載のシナリオの修正方法。
【請求項５】
前記シナリオの修正がテンプレートが意図しているものであるか否かを判定する手順と、
前記修正がテンプレートの変数に関する箇所でなく、かつ、前記修正がテンプレートが意図していないものであれば、ユーザへ警告を通知する手順と、を含む請求項２に記載のシナリオの修正方法。
【請求項６】
シナリオの生成元であるテンプレートを管理するテンプレート管理部及び定型業務を実行するシナリオを管理するシナリオ管理部を備える管理装置に以下の手順を実行させるプログラムであって、
前記シナリオの修正がテンプレートの変数に関連する箇所であるか否かを判定する手順と、
前記シナリオの修正に係る変数に制約条件があるか否かを判定する手順と、
前記シナリオの修正が制約条件を満たしているか否かを判定する手順と、
前記修正がテンプレートの変数に関連する箇所であり、前記修正に係る変数に制約条件があり、かつ、前記修正が制約条件を満たしていなければ、当該シナリオの修正はテンプレートに規定された条件を満たさないと判定する手順と、を含むプログラム。
【請求項７】
前記修正がテンプレートに規定された条件を満たさないと判定された場合に、ユーザに該変数に関する制約条件を提示する手順を含む請求項６に記載のプログラム。
【請求項８】
前記シナリオの生成元のテンプレートの変数に関する箇所が修正されたとき、ユーザに該変数に関する制約条件を提示する請求項７に記載のプログラム。
【請求項９】
前記シナリオの修正がテンプレートが意図しているものであるか否かを判定する手順と、
前記修正がテンプレートの変数に関する箇所でなく、かつ、当該修正がテンプレートが意図していないものであれば、ユーザへ警告を通知する手順と、を含む請求項６に記載のプログラム。
【請求項１０】
シナリオの生成元であるテンプレートを管理するテンプレート管理部及び定型業務を実行するシナリオを管理するシナリオ管理部を備える管理装置であって、
前記シナリオの修正がテンプレートに規定された条件を満たすか否かを判定する判定部を有し、
前記判定部は、
前記シナリオの修正がテンプレートの変数に関連する箇所であるか否か、前記シナリオの修正に係る変数に制約条件があるか否か、及び前記シナリオの修正が制約条件を満たしているか否か、の各判定をし、
当該修正がテンプレートの変数に関連する箇所であり、当該修正に係る変数に制約条件があり、かつ、当該修正が制約条件を満たしていなければ、当該シナリオの修正はテンプレートに規定された条件を満たさないと判定する管理装置。
【請求項１１】
前記判定部は、当該修正がテンプレートに規定された条件を満たさないと判定された場合に、ユーザに該変数に関する制約条件を提示する請求項１０に記載の管理装置。
【請求項１２】
前記判定部は、前記シナリオの生成元のテンプレートの変数に関する箇所が修正されたとき、ユーザに該変数に関する制約条件を提示する請求項１１に記載の管理装置。
【請求項１３】
前記判定部は、
前記シナリオの修正がテンプレートが意図しているものであるか否かを判定し、
当該修正がテンプレートの変数に関連する箇所でなく、かつ、当該修正がテンプレートが意図していないものであれば、ユーザへ警告を通知する請求項１０に記載の管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ジョブスケジューラを用いて定型的なストレージ管理業務を自動的に実行するシナリオを取り扱う情報処理装置に関し、特に、シナリオの修正に関する。
【背景技術】
【０００２】
情報処理装置を利用した業務では、種々の定型業務が含まれる。例えば、大容量記憶装置であるストレージの管理業務では、定型業務として多量のデータを定期的にバックアップする必要がある。これらの定型業務を自動的に実行し、オペレータの処理負担を軽減する技術としてジョブネットワークが知られている。ジョブネットワークとは、ジョブの実行手順を予め規定したジョブネット構成ファイルを用意し、情報処理装置にジョブネット構成ファイルに従って、各ジョブを自動的に実行させる技術である。ジョブの実行手順としては、例えば、実行すべきジョブの種類、実行すべき時刻、結果の出力先、ジョブ同士の連携方法などが含まれる。
【０００３】
意図された定型業務を正確に実行するためには、ジョブネット構成ファイルは、正確、緻密に作成する必要がある。ジョブネット構成ファイルの作成を支援するための技術としては、例えば、特許文献１に記載される技術があげられる。
【特許文献１】特開２００１−１６６９２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
前述した従来技術では、ジョブネット構成ファイルを生成するためには、予め用意されたひな型（テンプレート）内の情報にパラメタを埋め込むことによって、ジョブ制御文（シナリオ）を生成していた。すなわち、テンプレートとシナリオは別に管理されているので、ユーザはシナリオを自由に修正することができる。このとき、テンプレートに制約条件が設定されていたとしても、シナリオの修正箇所に対する制約条件が分からない。そのため、生成元テンプレートに定義された制約条件を満たさない修正をする可能性がある。このような誤った修正がされたシナリオの運用はストレージ環境に障害を引き起こす原因になる。
【０００５】
従来、シナリオを修正したことに伴う問題点の有無はユーザが判断する必要があった。よって、テンプレートを修正するユーザは、テンプレートの書式や、業務手順を熟知していなければならず、このような知識を有さないときは、シナリオに誤った修正がされることがあった。
【０００６】
本発明は、テンプレートに定義された制約条件を満たさない修正に対して警告を通知することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、ストレージ装置を管理するシナリオを実行するシナリオ実行部が設けられた業務サーバと、前記テンプレートを管理するテンプレート管理部及び前記シナリオを管理するシナリオ管理部を備える管理サーバと、を有するストレージシステムにおいて実行されるシナリオの修正方法であって、前記シナリオの修正がテンプレートの変数に関連する箇所であるか否かを判定する手順と、前記シナリオの修正に係る変数に制約条件があるか否かを判定する手順と、前記シナリオの修正が制約条件を満たしているか否かを判定する手順と、前記修正がテンプレートの変数に関連する箇所であり、前記修正に係る変数に制約条件があり、かつ、前記修正が制約条件を満たしていなければ、当該シナリオの修正はテンプレートに規定された条件を満たさないと判定する手順と、を含む。
【発明の効果】
【０００８】
本発明によると、ユーザが、シナリオ管理プログラムによってシナリオを修正する際、テンプレートに定義された制約条件をユーザに提示することができる。また、意図されていない箇所の修正に対する警告を通知することができる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の実施の形態を図面を参照して説明する。
【００１０】
図１は、本発明の実施の形態のコンピュータシステムの構成図である。
【００１１】
本発明の実施の形態のコンピュータシステムは、管理サーバ１、業務サーバ２、テープバックアップサーバ３、ストレージ装置５及びこれらを接続するネットワーク４、６によって構成されている。
【００１２】
管理サーバ１は、制御装置（ＣＰＵ）１１、入出力装置（キーボード、表示装置等）１２、メモリ１３及びネットワークインターフェース（Ｉ／Ｆ）１４が備わるコンピュータ装置である。
【００１３】
メモリ１３には、シナリオ１０３、テンプレート１０４、シナリオ・テンプレート対応情報１０５が記憶されている、シナリオ１０３は、定型的な業務を行うために実行される複数のジョブについて定める（図４参照）。テンプレート１０４は、定型的なシナリオを生成するために用いられ、複数のジョブを実行する順序を定める（図２参照）。シナリオ・テンプレート対応情報１０５は、シナリオ１０３とその生成元となったテンプレート１０４との関係が含まれている（図３参照）。
【００１４】
また、メモリ１３には、テンプレート管理プログラム１０１及びシナリオ管理プログラム１０２が記憶されている。テンプレート管理プログラム１０１は、ユーザからの指示に従ってテンプレート１０４を用いてシナリオ１０３を作成するシナリオ生成部１０１１を有する。シナリオ管理プログラム１０２は、ユーザからの指示に従って既に生成されたシナリオ１０３を修正するシナリオ編集部１０２１を有する。
【００１５】
業務サーバ２は、制御装置（ＣＰＵ）２１、メモリ２３及びネットワークインターフェース（Ｉ／Ｆ）２４、２５が備わるコンピュータ装置である。Ｉ／Ｆ（Ａ）２４は、他のサーバに対するインターフェースであって、例えば、ＴＣＰ／ＩＰプロトコルによって、サーバ間でデータや制御情報を通信可能であり、例えばイーサネット（登録商標、以下同じ）が用いられる。また、Ｉ／Ｆ（Ｂ）２５は、ストレージ装置５に対するインターフェースであって、例えば、ファイバチャネルプロトコルや、ｉＳＣＳＩプロトコルによって、ストレージ装置５との間でデータや制御信号を送受信する。
【００１６】
業務サーバ２では、ＣＰＵ２１がメモリ２３に記憶されたシナリオ実行プログラム２０１を実行することによって、管理サーバ１によって生成されたシナリオを実行する。より具体的には、シナリオ１０３がジョブスケジューラに登録されると、所定のタイミング（所定時刻や、所定のイベントが生じたとき）にシナリオに従ってジョブが実行され、定型業務（例えば、ストレージ装置５に記憶されたデータの定期的なバックアップ）が実行される。
【００１７】
テープバックアップサーバ３は、ＣＰＵ３１、メモリ３３、インターフェース（Ｉ／Ｆ）３４、３５、３６が備わるコンピュータ装置である。Ｉ／Ｆ（Ａ）３４は、他のサーバに対するインターフェースであって、例えば、ＴＣＰ／ＩＰプロトコルによって、サーバ間でデータや制御情報を通信可能であり、例えばイーサネットが用いられる。また、Ｉ／Ｆ（Ｂ）３５は、ストレージ装置５に対するインターフェースであって、例えば、ファイバチャネルプロトコルや、ｉＳＣＳＩプロトコルによって、ストレージ装置５との間でデータや制御信号を送受信する。また、Ｉ／Ｆ（Ｃ）３６は、テープ記憶装置３７に対するインターフェースであって、例えば、ＳＣＳＩプロトコルによって、テープ記憶装置３７との間でデータや制御信号を送受信する。
【００１８】
テープバックアップサーバ３では、ＣＰＵ３１がメモリ３３に記憶されたシナリオ実行プログラム３０１を実行することによって、管理サーバ１によって生成されたシナリオを実行する。より具体的には、シナリオ１０３がジョブスケジューラに登録されると、所定のタイミング（所定時刻や、所定のイベントが生じたとき）にシナリオに従ってジョブ（例えば、ストレージ装置５に記憶されたデータをテープにバックアップ）が実行される。
【００１９】
管理サーバ１、業務サーバ２及びテープバックアップサーバ３は、ＬＡＮ４を介して接続されている。ＬＡＮ４は、例えばＴＣＰ／ＩＰプロトコルによって、コンピュータ間でデータや制御情報を通信可能なネットワークであり、例えばイーサネットが用いられる。
【００２０】
ストレージ装置５は、複数のディスク５５及びディスクアレイコントローラを含んで構成されている。ディスクアレイコントローラは、制御装置（ＣＰＵ）５１、メモリ５３及びインターフェース５４を含んでいる。ＣＰＵ５１では制御プログラムが動作しており、サーバ２、３からの要求に基づいてディスクに対するデータの入出力を制御する。また、ディスクによって構成されるＲＡＩＤ（Redundant Array of Independent Disks）を管理する。
【００２１】
ストレージ装置５は、ＳＡＮ６を介して業務サーバ２及びテープバックアップサーバ３と接続されている。ＳＡＮ６は、例えばファイバチャネルプロトコルや、ｉＳＣＳＩプロトコのような、データの転送に適するプロトコルで通信可能なネットワークである。
【００２２】
図２は、本発明の実施の形態のテンプレート１０４の説明図である。
【００２３】
テンプレートは、シナリオのひな形及び属性定義ファイルによって構成される。シナリオのひな形には、テンプレートを構成するジョブの実行順序、ジョブの変数やジョブのオプションが規定されている。すなわち、シナリオのひな型は、シナリオを構成するジョブ及びジョブの実行手順が記載されたファイルである。
【００２４】
属性定義ファイルには、ジョブの変数の制約条件が規定されている。例えば、図２に示すように、属性定義ファイルの
<TemplateVariable  Name=“OPT”
Description=“dbbackup Option”>
<SelectionItem DisplayName=“-a” Value=“-a”/>
<SelectionItem DisplayName=“-b” Value=“-b”/>
</TemplateVariable>
によって、コマンド"dbbackup"のオプションを定める変数"OPT"は"-a"、"-b" のいずれかでなければならないことが規定されている。
【００２５】
また、属性定義ファイルの
<TemplateVariable Name=“HOST”
Description=“Host Name”/>
：
によって、コマンド"dbbackup"の対象を定める変数"HOST"は任意の文字列でよいことが規定されている。
【００２６】
図３は、本発明の実施の形態のシナリオ・テンプレート対応情報１０５の説明図である。
【００２７】
シナリオ・テンプレート対応情報１０５は、シナリオ生成時にユーザが指定したテンプレートとシナリオとの関係がシナリオ生成時に登録される。すなわち、このシナリオの生成元のテンプレート名がシナリオ名と対応して登録されている。この登録された情報は、シナリオ修正時に、当該シナリオの生成元テンプレートを特定するのに使用される。なお、このシナリオ・テンプレート対応情報１０５に登録されていないシナリオは、テンプレートを用いずに作成されたものである。例えば、シナリオ"BKJobNet1"は、テンプレート"BackupTemplate"から生成されている。
【００２８】
図４は、本発明の実施の形態のシナリオ１０３の説明図である。
【００２９】
シナリオは、テンプレートの変数に、入力されたパラメタが適用されることによって、シナリオが構成される。すなわち、変数"OPT"の値が"-a"と定義されることによってoption=-a;となり、変数"HOST"の値が"host1"と定義されることによってhost=host1;となり、変数の定義を含んだシナリオが生成される。
【００３０】
なお、図４にはテンプレートに基づいて生成されたシナリオを図示したが、テンプレートに基づかずに、シナリオの書式に従って、ユーザがテキスト文によってコマンドや変数を入力してシナリオを作成してもよい。
【００３１】
次に、本発明の実施の形態で用いられるシナリオの生成について説明する。
【００３２】
図５は、本発明の実施の形態の管理サーバによる処理の概念図である。破線は従来技術による処理を示し、実線は本発明による処理を示す。なお、図５中で、テンプレート１０４及びシナリオ・テンプレート対応情報１０５がテンプレート管理プログラム１０１中に示されているが、これらは別に存在するものである。また、シナリオ１０３がシナリオ管理プログラム１０２中に示されているが、これらは別に存在するものである。
【００３３】
まず、従来技術において、ユーザはテンプレートを指定して、シナリオ生成部１０１１にシナリオの生成を指示する。シナリオ生成部１０１１はユーザから指定されたテンプレート１０４を読み込んで、該テンプレートにユーザが入力したパラメタを適用してシナリオを生成する。生成されたシナリオは、シナリオ管理プログラム１０２によって、シナリオ１０３として管理される。
【００３４】
次に、本発明による処理について説明する。
【００３５】
ユーザがシナリオ生成部１０１１にテンプレートを指定してシナリオの生成を指示すると、シナリオ生成部１０１１はユーザから指定されたテンプレート１０４を読み込んで、該テンプレートにユーザが入力したパラメタを適用してシナリオを生成する。そして、該シナリオの生成に用いられた生成元テンプレートとシナリオとの対応をシナリオ・テンプレート対応情報１０５として保存する。生成されたシナリオは、シナリオ管理プログラム１０２によって、シナリオ１０３として管理される。
【００３６】
ユーザがシナリオを編集する際に、シナリオ編集部１０２１は、シナリオ・テンプレート対応情報１０５を参照して、ユーザに指定されたシナリオの生成元のテンプレートを特定する。そして、シナリオの修正がテンプレートが意図しているものかを判定する。
【００３７】
図６は、シナリオ修正時の制約条件提示処理のフローチャートであり、シナリオ編集部１０２１によって実行される。
【００３８】
まず、ユーザの指定等によって修正対象のシナリオが特定されると、シナリオ・テンプレート対応情報１０５を参照して、このシナリオが生成される元となったテンプレートが存在するか否かを判定する（Ｓ１０１）。
【００３９】
そして、このシナリオがシナリオ・テンプレート対応情報１０５に登録されていれば、当該シナリオに対応するテンプレートを特定する。そして、該テンプレートを読み込んで、その内容を解析して（Ｓ１０２）、ステップＳ１０５に進む。一方、このシナリオがシナリオ・テンプレート対応情報１０５に登録されていなければ、当該シナリオに対応するテンプレートが存在しないので、ユーザにその旨を通知する（Ｓ１０４）。なお、既にそのテンプレートが存在しないことが通知されていれば（Ｓ１０３でＹＥＳ）、さらに、ユーザに通知することはない。
【００４０】
ステップＳ１０５では、シナリオの修正が完了したか否かを判定する。例えば、シナリオ修正画面（図７（ａ））で「保存」ボタンを操作されると、シナリオの修正が完了したと判断する。その結果、シナリオの修正が完了していれば、修正後のシナリオを保存して（Ｓ１１１）、この処理を終了する。一方、シナリオの修正が完了していなければ、さらに、ユーザにシナリオの修正内容の入力を求める（Ｓ１０６）。
【００４１】
次に、生成元テンプレートが読込／解析されているか否かを判定する（Ｓ１０７）。生成元テンプレートが存在しない場合、生成元テンプレートが読込／解析されないため、ステップＳ１０５に戻る。生成元テンプレートが存在する場合は、生成元テンプレートが読込／解析されているため、テンプレート１０４を参照して、修正箇所がテンプレートの変数に関連する箇所か否かを判定する（Ｓ１０８）。その結果、修正箇所がテンプレートの変数に関連する箇所でなければ、修正内容について変数の制約条件に関する検証をする必要がないので、ステップＳ１０５に戻る。一方、修正箇所がテンプレートの変数に関連する箇所であれば、さらに、属性定義ファイルを参照して、この変数に制約条件があるか否かを判定する（Ｓ１０９）。
【００４２】
その結果、修正箇所に制約条件がなければ、その修正は可能なので、ステップＳ１０５に戻る。一方、修正に係る変数に制約条件があれば、修正内容が制約条件を満たしているか否かを判定する（Ｓ１１０）。
【００４３】
その結果、修正内容が制約条件を満たしていれば、その修正は可能ないので、ステップＳ１０５に戻る。一方、修正内容が制約条件を満たしていなければ、ユーザにその変数の制約条件を提示する（Ｓ１１２）。
【００４４】
図７は、シナリオ編集部１０２１によって表示されるシナリオ修正用画面の説明図である。
【００４５】
ユーザが修正するシナリオを指定すると、指定されたシナリオ１０３と、そのシナリオの生成元のテンプレート１０４が読み込まれ、シナリオの構成を示す画面（図７（ａ））が表示される。この画面の左欄には指定されたシナリオ名が表示され、右下欄には指定されたシナリオを構成するジョブ（サブシナリオ）の実行順序が表示される。
【００４６】
そして、ユーザがこのジョブの一つを指定するとジョブ修正画面（図７（ｂ））が起動する。このシナリオ定義画面では、指定されたジョブによって実行されるコマンドが表示され、そのコマンドのパラメタ（オプション、そのコマンドの実行対象となるホスト）を修正することができる。このとき、入力された修正内容が制約条件に違反していれば、画面右欄ににその制約条件が表示される。例えば、図７に示す状態ではオプション欄に"-c"が入力されているので、この欄の制約条件に反しており、右欄にはコマンドのオプションとして"-a"、"-b"が選択可能であることが表示されている。
【００４７】
ユーザは、各項目の入力が完了し、「登録」ボタンを操作することによってジョブが修正される。
【００４８】
図８は、修正後のシナリオの保存処理のフローチャートであり、制約条件提示処理（図６のＳ１１１）から呼び出されて（すなわち、シナリオ修正画面（図７（ａ））で「保存」ボタンを操作されると）、シナリオ編集部１０２１によって実行される。
【００４９】
まず、シナリオ・テンプレート対応情報１０５を参照して、このシナリオが生成される元となったテンプレートが存在するか否かを判定する（Ｓ１２１）。
【００５０】
そして、このシナリオがシナリオ・テンプレート対応情報１０５に登録されていれば、当該シナリオに対応するテンプレートを特定する。そして、該テンプレートを読み込んで、その内容を解析して（Ｓ１２２）、ステップＳ１２５に進む。一方、このシナリオがシナリオ・テンプレート対応情報１０５に登録されていなければ、当該シナリオに対応するテンプレートが存在しないので、ユーザにその旨を通知する（Ｓ１２４）。この場合、シナリオの修正内容とテンプレートとの整合を検証する必要がないので、修正後のシナリオを登録する（Ｓ１２８）。なお、既にそのテンプレートが存在しないことが通知されていれば（Ｓ１２３でＹＥＳ）、さらに、ユーザに通知することなく、修正後のシナリオを登録する（Ｓ１２８）。
【００５１】
ステップＳ１２５では、シナリオの修正を検証していない箇所があるか否かを判定する。例えば、検証された修正箇所に検証済みフラグを付すことによって修正の検証が済んでいるかを判定することができる。そして、修正箇所がテンプレートの変数に関連する箇所か否かを判定する（Ｓ１２６）。その結果、修正箇所がテンプレートの変数に関連する箇所であれば、制約条件提示処理（図６）で既に修正の検証がされていることから、新たにユーザに警告をする必要がないので、ステップＳ１２５に戻る。一方、修正箇所がテンプレートの変数に関連する箇所でなければ、修正がテンプレートが意図していないものであるか否かを判定する（Ｓ１２７）。
【００５２】
その結果、修正が新たなサブシナリオの追加（又は、サブシナリオの削除）等のテンプレートが意図していない修正であれば、ユーザへ警告を通知する（Ｓ１２８）。一方、テンプレートが意図している修正であれば、ユーザへ警告を通知することなく、ステップＳ１２５に戻る。
【００５３】
なお、シナリオ保存処理（図８）は、制約条件提示処理（図６）と共に動作するのではなく、単独で動作してシナリオの修正を検証してもよい。
【００５４】
図９は、シナリオ編集部１０２１によって表示される警告画面の説明図である。
【００５５】
シナリオ修正画面（図９（ａ））でシナリオの修正作業をし、修正作業終了後に「保存」ボタンを操作するとシナリオ保存処理（図８）が実行され、修正後のシナリオの内容が検証される。その結果、テンプレートが意図していない修正があれば、ユーザへ警告を通知する画面が起動する（図９（ｂ））。ユーザは、警告画面で「はい」を操作することによって、テンプレートが意図していない修正がされたシナリオを警告に反して保存することができる。
【００５６】
以上説明したように本発明の実施の形態では、テンプレートの修正が意図されている箇所であるが、修正された値が制約条件を満たさない場合には、制約条件を提示する。すなわち、テンプレートの修正が変数の制約条件に反するものであれば、その変数の制約条件が提示されるので、従来ユーザが簡単に知り得なかったテンプレートに定義された制約条件を提示することができる。
【００５７】
また、テンプレートの修正が意図されていない箇所である場合には、警告を通知する。すなわち、修正したシナリオを保存する直前に、テンプレートで意図していない修正があるかを検証する。そして、テンプレートの修正が変数に関する箇所でなければ、ユーザに警告がなされるので、シナリオの保存前にテンプレートが意図しない修正であることを警告することができる。
【図面の簡単な説明】
【００５８】
【図１】本発明の実施の形態のコンピュータシステムの構成図である。
【図２】本発明の実施の形態のテンプレートの説明図である。
【図３】本発明の実施の形態のシナリオ・テンプレート対応情報の説明図である。
【図４】本発明の実施の形態のシナリオの説明図である。
【図５】本発明の実施の形態の管理サーバによる処理の概念図である。
【図６】本発明の実施の形態の制約条件提示処理のフローチャートである。
【図７】本発明の実施の形態のシナリオ修正用画面の説明図である。
【図８】本発明の実施の形態のシナリオ保存処理のフローチャートである。
【図９】本発明の実施の形態の警告画面の説明図である。
【符号の説明】
【００５９】
１        管理サーバ
２        業務サーバ
３        テープバックアップサーバ
４        ネットワーク
５        ストレージ装置
６        ネットワーク
１０１    テンプレート管理プログラム
１０２    シナリオ管理プログラム
１０３    シナリオ
１０４    テンプレート
１０５    シナリオ・テンプレート対応情報
１０１１  シナリオ生成部
１０２１  シナリオ編集部
【図１】
2005339213.tif 000003
【図２】
2005339213.tif 000004
【図３】
2005339213.tif 000005
【図４】
2005339213.tif 000006
【図５】
2005339213.tif 000007
【図６】
2005339213.tif 000008
【図７】
2005339213.tif 000009
【図８】
2005339213.tif 000010
【図９】
2005339213.tif 000011