(57)【特許請求の範囲】
【請求項１】
対象とする管理リソースに対する処理内容が定義された複数の第１のサービステンプレートを当該第１のサービステンプレートの実行順番に従って順次並べるようにして作成される第２のサービステンプレートの作成を支援するサービステンプレート作成支援装置において、
前記第１のサービステンプレートは、
それぞれ処理内容が定義された複数の部品を当該部品の実行順番に従って順次並べるようにして作成され、
前記部品の種類として、
対象とする前記管理リソースの構成情報を取得する処理を含む構成取得部品と、ユーザに確認又は応答を求める処理を含むユーザ確認部品と、対象とする前記管理リソースの構成変更を実行する処理を含む構成変更部品とを有し、
少なくとも前記第２のサービステンプレートを作成するための環境であるサービステンプレート作成基盤を前記ユーザに提供するサービステンプレート作成部と、
前記サービステンプレート作成基盤を利用して前記ユーザにより作成された前記第２のサービステンプレートについて、各前記ユーザ確認部品を当該第２のサービステンプレートにおける実行順番の前方に片寄せし、前記構成変更部品を当該第２のサービステンプレートにおける実行順番の後方に片寄せするよう、前記第２のサービステンプレートを構成する前記部品の並び替えを行うサービステンプレート再構成部と
を備え、
前記サービステンプレート再構成部は、
前記第２のサービステンプレートに含まれる前記構成取得部品と、当該構成取得部品の直前の前記構成変更部品との並び替えについては、前記第２のサービステンプレートの定義情報に基づいて、前記構成取得部品が直前の前記構成変更部品にデータ依存し、又は、前記構成取得部品の対象となる前記管理リソースが前記構成変更部品によって影響を受け得る管理リソースである場合には実施しない
ことを特徴とするサービステンプレート作成支援装置。
【請求項２】
前記構成取得部品の対象となる前記管理リソースが前記構成変更部品によって影響を受け得る管理リソースである場合とは、
前記構成取得部品の対象とする前記管理リソースと、直前の前記構成変更部品の対象とする前記管理リソースとが同一の場合、又は、前記構成取得部品の対象とする前記管理リソースが、前記構成変更部品の対象とする前記管理リソースと同一ではないが、前記構成変更部品の対象とする前記管理リソースの変更によって結果的に影響を受け得る管理リソースに含まれる場合である
ことを特徴とする請求項１に記載のサービステンプレート作成支援装置。
【請求項３】
前記サービステンプレート再構成部は、
前記構成変更部品の入力プロパティのデータが他の部品の出力データから引き継がれる場合には、当該構成変更部品の直前の前記構成取得部品が対象とする前記管理リソースを、当該構成変更部品が対象とする前記管理リソースと推定する
ことを特徴とする請求項２に記載のサービステンプレート作成支援装置。
【請求項４】
前記サービステンプレート再構成部は、
前記構成変更部品の入力プロパティのデータがユーザによって入力される場合には、当該構成変更部品の前記入力プロパティのデータに基づいて、当該構成変更部品が対象とする前記管理リソースを推定する
ことを特徴とする請求項２に記載のサービステンプレート作成支援装置。
【請求項５】
前記サービステンプレート再構成部は、
前記構成取得部品の対象とする前記管理リソースが、前記構成変更部品の対象とする前記管理リソースと同一ではないが、前記構成変更部品の対象とする前記管理リソースの変更によって結果的に影響を受け得る管理リソースに含まれる場合に、当該構成変更部品及び当該構成取得部品の並び替えの可否をユーザに問い合わせる
ことを特徴とする請求項２に記載のサービステンプレート作成支援装置。
【請求項６】
前記サービステンプレート再構成部は、
前記構成変更部品及び前記構成取得部品の並び替えの可否をユーザに問い合わせる際に、当該構成変更部品及び当該構成取得部品の並び替えの可否の問合せに対する現在までのユーザの判定実績を提示する
ことを請求項５に記載のサービステンプレート作成支援装置。
【請求項７】
前記サービステンプレート再構成部は、
前記第２のサービステンプレートにおける実行順番の前方に片寄せした各前記ユーザ確認部品のうち、集約可能な前記ユーザ確認部品同士を集約する
ことを特徴とする請求項１に記載のサービステンプレート作成支援装置。
【請求項８】
対象とする管理リソースに対する処理内容が定義された複数の第１のサービステンプレートを当該第１のサービステンプレートの実行順番に従って順次並べるようにして作成される第２のサービステンプレートの作成を支援するサービステンプレート作成支援装置により実行されるサービステンプレート作成支援方法において、
前記第１のサービステンプレートは、
それぞれ処理内容が定義された複数の部品を当該部品の実行順番に従って順次並べるようにして作成され、
前記部品の種類として、
対象とする前記管理リソースの構成情報を取得する処理を含む構成取得部品と、ユーザに確認又は応答を求める処理を含むユーザ確認部品と、対象とする前記管理リソースの構成変更を実行する処理を構成変更部品とを有し、
少なくとも前記第２のサービステンプレートを作成するための環境であるサービステンプレート作成基盤を前記ユーザに提供する第１のステップと、
前記サービステンプレート作成基盤を利用して前記ユーザにより作成された前記第２のサービステンプレートについて、各前記ユーザ確認部品を当該第２のサービステンプレートにおける実行順番の前方に片寄せし、前記構成変更部品を当該第２のサービステンプレートにおける実行順番の後方に片寄せするよう、前記第２のサービステンプレートを構成する前記部品の並び替えを行う第２のステップと
を備え、
前記第２のステップにおいて、前記サービステンプレート作成支援装置は、
前記第２のサービステンプレートに含まれる前記構成取得部品と、当該構成取得部品の直前の前記構成変更部品との並び替えについては、前記第２のサービステンプレートの定義情報に基づいて、前記構成取得部品が直前の前記構成変更部品にデータ依存し、又は、前記構成取得部品の対象となる前記管理リソースが前記構成変更部品によって影響を受け得る管理リソースである場合には実施しない
ことを特徴とするサービステンプレート作成支援方法。
【請求項９】
前記構成取得部品の対象となる前記管理リソースが前記構成変更部品によって影響を受け得る管理リソースである場合とは、
前記構成取得部品の対象とする前記管理リソースと、直前の前記構成変更部品の対象とする前記管理リソースとが同一の場合、又は、前記構成取得部品の対象とする前記管理リソースが、前記構成変更部品の対象とする前記管理リソースと同一ではないが、前記構成変更部品の対象とする前記管理リソースの変更によって結果的に影響を受け得る管理リソースに含まれる場合である
ことを特徴とする請求項８に記載のサービステンプレート作成支援方法。
【請求項１０】
前記第２のステップにおいて、前記サービステンプレート作成支援装置は、
前記構成変更部品の入力プロパティのデータが他の部品の出力データから引き継がれる場合には、当該構成変更部品の直前の前記構成取得部品が対象とする前記管理リソースを、当該構成変更部品が対象とする前記管理リソースと推定する
ことを特徴とする請求項９に記載のサービステンプレート作成支援方法。
【請求項１１】
前記第２のステップにおいて、前記サービステンプレート作成支援装置は、
前記構成変更部品の入力プロパティのデータがユーザによって入力される場合には、当該構成変更部品の前記入力プロパティのデータに基づいて、当該構成変更部品が対象とする前記管理リソースを推定する
ことを特徴とする請求項９に記載のサービステンプレート作成支援方法。
【請求項１２】
前記第２のステップにおいて、前記サービステンプレート作成支援装置は、
前記構成取得部品の対象とする前記管理リソースが、前記構成変更部品の対象とする前記管理リソースと同一ではないが、前記構成変更部品の対象とする前記管理リソースの変更によって結果的に影響を受け得る管理リソースに含まれる場合に、当該構成変更部品及び当該構成取得部品の並び替えの可否をユーザに問い合わせる
ことを特徴とする請求項９に記載のサービステンプレート作成支援方法。
【請求項１３】
前記サービステンプレート作成支援装置は、
前記構成変更部品及び前記構成取得部品の並び替えの可否をユーザに問い合わせる際に、当該構成変更部品及び当該構成取得部品の並び替えの可否の問合せに対する現在までのユーザの判定実績を提示する
ことを請求項１２に記載のサービステンプレート作成支援方法。
【請求項１４】
前記サービステンプレート作成支援装置が、前記第２のサービステンプレートにおける実行順番の前方に片寄せした各前記ユーザ確認部品のうち、集約可能な前記ユーザ確認部品同士を集約する第３のステップを備える
ことを特徴とする請求項８に記載のサービステンプレート作成支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はサービステンプレート作成支援装置及び方法に関し、例えば、計算機システムの運用／保守業務を自動化させ得る運用自動化ツールが実装された管理サーバ計算機に適用して好適なものである。
【背景技術】
【０００２】
近年、データセンタなどの大規模で多様な管理リソースを含む計算機システムの運用／保守業務の効率化を実現するため、運用／保守業務の一連の処理ステップをサービステンプレートとして定義することにより、かかる運用／保守業務を自動化させ得るツール（ＩＴ運用自動化ツール）が商品化されている。【０００３】
この種のＩＴ運用自動化ツールでは、ホスト装置、ストレージ装置、ネットワーク装置、ＯＳ（Operating System）及びアプリケーションといった管理リソースごとに、その管理リソースを対象とした基本的な処理の流れを定義したサービステンプレートを作成することができ、さらに複数種類の管理リソースのサービステンプレートを組み合わせることにより、複数種類の管理リソースを横断するユースケースを実現するサービステンプレートを作成することができる。【０００４】
なお、管理リソースごとの各サービステンプレートは、構成取得部品、ユーザ確認部品及び構成変更部品などの部品から構成される。構成取得部品（以下、適宜、これをＧ部品とも呼ぶ）は、外部リソース又は対象となる管理リソースの管理ツールからＡＰＩ（Application Programming Interface）を利用して当該管理リソースの構成情報を取得し、取得した構成を基に構成変更の内容を定義する処理を含む部品である。またユーザ確認部品（以下、適宜、これをＵ部品とも呼ぶ）は、構成取得部品により定義された構成変更内容に対してユーザに確認や応答を求める処理を含む部品である。さらに構成変更部品（以下、適宜、これをＥ部品とも呼ぶ）は、外部リソースに対して構成情報を変更したり、各管理リソースの管理ツールに対してＡＰＩを利用して変更を実行する処理を含む部品である。【０００５】
下記特許文献１には、異なるシステムにワークフローを展開する場合に展開先のシステムに合わせたワークフローを作成するための発明が開示され、特許文献２には、ワークフローを作成するための、利用可能なリソースをより有効に利用する方法が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１２−１４６０８９号公報
【特許文献２】特開２００３−１３２１８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、既存のサービステンプレート（以下、これを既存サービステンプレートと呼ぶ）を複数組み合わせて新たなサービステンプレートを作成する場合、単に既存サービステンプレートを順番に並べるだけでは、新たなサービステンプレートの後方のユーザ確認部品の実行時に、システムがユーザから以降の処理を中断する指示を受け付けた場合に、それまでに実行した構成変更処理をロールバックしなければならない手間が生じる。【０００８】
また単に既存サービステンプレートを順番に並べるだけでは、各既存サービステンプレートに含まれるユーザ確認部品が新たに作成されたサービステンプレートの中に散在することとなり、ユーザが何度も確認処理を行わなければならないという煩わしさをユーザに感じさせる問題がある。【０００９】
このような問題を解決するための手段として、例えば、ユーザ確認部品を新たなサービステンプレートの前方に片寄せするよう各既存サービステンプレートの部品の順番を入れ替え、各既存サービステンプレートにおけるユーザ確認処理をまとめて先に行った上で構成変更を行うように新たなサービステンプレートを再構成することが考えられる。【００１０】
しかしながら、この方法によると、ある構成変更部品によってある管理リソース（「リソースＡ」とする）が影響を受ける場合に、その構成変更部品と、当該構成変更部品の後方にあり「リソースＡ」の情報を取得する他のサービステンプレートの構成取得部品とを並び替えてしまうと、並替え前の構成取得部品により取得される「リソースＡ」の情報と、並替え後の構成取得部品により取得される「リソースＡ」の情報が異なる可能性があるため、実行結果が意図しないものとなるおそれがあった。【００１１】
本発明は以上の点を考慮してなされたもので、上述の問題を一挙に解決して、計算機システムの運用／保守業務をより一層と効率化させ得るサービステンプレート作成支援装置及び方法を提案しようとするものである。
【課題を解決するための手段】
【００１２】
かかる課題を解決するため本発明においては、対象とする管理リソースに対する処理内容が定義された複数の第１のサービステンプレートを当該第１のサービステンプレートの実行順番に従って順次並べるようにして作成される第２のサービステンプレートの作成を支援するサービステンプレート作成支援装置において、前記第１のサービステンプレートは、それぞれ処理内容が定義された複数の部品を当該部品の実行順番に従って順次並べるようにして作成され、前記部品の種類として、対象とする前記管理リソースの構成情報を取得する処理を含む構成取得部品と、ユーザに確認又は応答を求める処理を含むユーザ確認部品と、対象とする前記管理リソースの構成変更を実行する処理を含む構成変更部品とを有し、少なくとも前記第２のサービステンプレートを作成するための環境であるサービステンプレート作成基盤を前記ユーザに提供するサービステンプレート作成部と、前記サービステンプレート作成基盤を利用して前記ユーザにより作成された前記第２のサービステンプレートについて、各前記ユーザ確認部品を当該第２のサービステンプレートにおける実行順番の前方に片寄せし、前記構成変更部品を当該第２のサービステンプレートにおける実行順番の後方に片寄せするよう、前記第２のサービステンプレートを構成する前記部品の並び替えを行うサービステンプレート再構成部とを有し、前記サービステンプレート再構成部が、前記第２のサービステンプレートに含まれる前記構成取得部品と、当該構成取得部品の直前の前記構成変更部品との並び替えについては、前記第２のサービステンプレートの定義情報に基づいて、前記構成取得部品が直前の前記構成変更部品にデータ依存し、又は、前記構成取得部品の対象となる前記管理リソースが前記構成変更部品によって影響を受け得る管理リソースである場合には実施しないようにした。【００１３】
また本発明においては、対象とする管理リソースに対する処理内容が定義された複数の第１のサービステンプレートを当該第１のサービステンプレートの実行順番に従って順次並べるようにして作成される第２のサービステンプレートの作成を支援するサービステンプレート作成支援装置により実行されるサービステンプレート作成支援方法において、前記第１のサービステンプレートは、それぞれ処理内容が定義された複数の部品を当該部品の実行順番に従って順次並べるようにして作成され、前記部品の種類として、対象とする前記管理リソースの構成情報を取得する処理を含む構成取得部品と、ユーザに確認又は応答を求める処理を含むユーザ確認部品と、対象とする前記管理リソースの構成変更を実行する処理を含む構成変更部品とを有し、少なくとも前記第２のサービステンプレートを作成するための環境であるサービステンプレート作成基盤を前記ユーザに提供する第１のステップと、前記サービステンプレート作成基盤を利用して前記ユーザにより作成された前記第２のサービステンプレートについて、各前記ユーザ確認部品を当該第２のサービステンプレートにおける実行順番の前方に片寄せし、前記構成変更部品を当該第２のサービステンプレートにおける実行順番の後方に片寄せするよう、前記第２のサービステンプレートを構成する前記部品の並び替えを行う第２のステップとを有し、前記第２のステップにおいて、前記サービステンプレート作成支援装置は、前記第２のサービステンプレートに含まれる前記構成取得部品と、当該構成取得部品の直前の前記構成変更部品との並び替えについては、前記第２のサービステンプレートの定義情報に基づいて、前記構成取得部品が直前の前記構成変更部品にデータ依存し、又は、前記構成取得部品の対象となる前記管理リソースが前記構成変更部品によって影響を受け得る管理リソースである場合には実施しないようにした。【００１４】
本発明のサービステンプレート作成装置及び方法によれば、作成された第２のサービステンプレートの部品の並替えに起因する不測のエラーが第２のサービステンプレートの実行時に発生することを未然に防止しながら、第２のサービステンプレートの実行時に構成変更のロールバックが発生したり、ユーザが頻繁に確認作業を行わなければならない事態が発生するのを有効に回避できる。
【発明の効果】
【００１５】
本発明によれば、サービステンプレートの作成やその実行を容易化でき、かくして計算機システムの運用／保守業務をより一層と効率化させ得るサービステンプレート作成支援装置及び方法を実現できる。
【図面の簡単な説明】
【００１６】
【図１】本実施の形態による計算機システムの全体構成を示すブロック図である。
【図２】（Ａ）及び（Ｂ）は、サービステンプレートの説明に供する図である。
【図３】サービステンプレートにおける部品の並び替えの説明に供する図である。
【図４】サービステンプレート作成画面の構成例を略線的に示す図である。
【図５】プロパティ設定画面の構成例を略線的に示す図である。
【図６】サービステンプレート管理テーブルの構成例を示す図表である。
【図７】部品管理テーブルの構成例を示す図表である。
【図８】プロパティ管理テーブルの構成例を示す図表である。
【図９】ステップ管理テーブルの構成例を示す図表である。
【図１０】実行フロー管理テーブルの構成例を示す図表である。
【図１１】データフロー管理テーブルの構成例を示す図表である。
【図１２】プロパティＧＵＩ設定管理テーブルの構成例を示す図表である。
【図１３】管理リソース間依存管理テーブルの構成例を示す図表である。
【図１４】部品並替え処理の処理手順を示すフローチャートである。
【図１５】サービステンプレート再構成処理の処理手順を示すフローチャートである。
【図１６】構成変更部品片寄せ処理の処理手順を示すフローチャートである。
【図１７】部品移動処理の処理手順を示すフローチャートである。
【図１８】部品間データ依存関係判定処理の処理手順を示すフローチャートである。
【図１９】管理リソース間依存関係判定処理の処理手順を示すフローチャートである。
【図２０】関連管理リソース推定処理の処理手順を示すフローチャートである。
【図２１】ユーザ確認部品片寄せ処理の処理手順を示すフローチャートである。
【図２２】ユーザ確認部品集約処理の処理手順を示すフローチャートである。
【図２３】隣接ユーザ確認部品集約処理の処理手順を示すフローチャートである。
【図２４】並列ユーザ確認部品集約処理の処理手順を示すフローチャートである。
【図２５】集約ユーザ確認部品分割処理の処理手順を示すフローチャートである。
【図２６】（Ａ）〜（Ｃ）は、サービステンプレート再構成処理の説明に供する模式図である。
【図２７】部品間のデータ依存関係の説明に供する模式図である。
【図２８】依存関係問合せ画面の画面構成を示す図である。
【図２９】（Ａ）〜（Ｃ）は、ユーザ確認部品集約処理の説明に供する模式図である。
【図３０】隣接ユーザ確認部品を集約した集約ユーザ確認部品に対する確認画面の構成例を示す図である。
【図３１】並列ユーザ確認部品を集約した集約ユーザ確認部品に対する確認画面の構成例を示す図である。
【発明を実施するための形態】
【００１７】
以下図面について、本発明の一実施の形態を詳述する。
【００１８】
（１）本実施の形態による計算機システムの構成
図１は、本実施の形態による計算機システム１を示す。この計算機システム１は、データセンタや企業内に設けられたＩＴシステム２と、ＩＴシステム２の管理リソース種別ごとの管理者がそれぞれ利用する複数の管理計算機から構成される管理計算機群３と、管理計算機群３を介してＩＴシステム２の運用及び保守等を行う管理サーバ計算機４とを備え、これらがネットワーク５を介して接続されて構成されている。
【００１９】
ＩＴシステム２は、例えば、１又は複数のサーバ装置６と、１又は複数のストレージ装置７と、１又は複数のネットワーク装置８とを有し、これらサーバ装置６、ストレージ装置７及びネットワーク装置８がネットワーク５を介して相互に接続されている。
【００２０】
サーバ装置６は、例えば、ユーザの業務内容に応じたソフトウェアが実装された汎用のサーバ装置などから構成され、ストレージ装置７にデータの読み書き行う。サーバ装置６には、VMware（登録商標）などの仮想化ソフトウェアが必要に応じて実装され、かかる仮想化ソフトウェアに基づいて、そのサーバ装置６上に１又は複数の仮想マシン（ＶＭ：Virtual Machine）が設定される。
【００２１】
ストレージ装置７は、例えば、複数のハードディスク装置が搭載されたディスクアレイ装置などから構成され、データを読み書きするための記憶領域をサーバ装置や仮想マシンに提供する。またネットワーク装置８は、例えば、サーバ装置６及びストレージ装置７間を接続する図示しないネットワークを構成するＳＡＮ（Storage Area Network）スイッチ又はＦＣ（Fibre Channel）スイッチなどのネットワーク機器から構成される。
【００２２】
管理計算機群３は、サーバ管理計算機９、ストレージ管理計算機１０及びネットワーク管理計算機１１を備えて構成される。サーバ管理計算機９は、ＩＴシステム２内のサーバ装置６を管理する管理者や、各サーバ装置６上に設定された仮想マシンを管理する管理者が利用する計算機である。ただし、サーバ管理計算機９とは別に、仮想マシンを管理する管理者が使用する管理計算機を設けるようにしてもよい。
【００２３】
ストレージ管理計算機１０は、ＩＴシステム２内のストレージ装置７を管理する管理者が利用する計算機である。またネットワーク管理計算機１１は、ＩＴシステム２内のネットワーク装置８を管理する管理者が利用する計算機である。
【００２４】
これらサーバ管理計算機９、ストレージ管理計算機１０及びネットワーク管理計算機１１は、それぞれ管理者の操作に応じたコマンドや、後述のように管理サーバ計算機４から与えられた指示に応じたコマンドを管理対象のサーバ装置６やストレージ装置７又はネットワーク装置８に送信することにより、そのサーバ装置６やストレージ装置７又はネットワーク装置８に対して指示された設定等を行う。
【００２５】
管理サーバ計算機４は、本計算機システム１全体を管理するシステム管理者がサービステンプレートを作成し、作成したサービステンプレートを実行するために利用する汎用のサーバ装置であり、ＣＰＵ（Central Processing Unit）２０、主記憶装置２１、補助記憶装置２２、入力装置２３、表示装置２４及び通信装置２５などのハードウェア資源を備えて構成される。
【００２６】
ＣＰＵ２０は、管理サーバ計算機４全体の動作制御を司るプロセッサである。また主記憶装置２１は、例えば、揮発性の半導体メモリから構成され、ＣＰＵ２０のワークメモリとして利用される。本管理サーバ計算機４の起動時や必要時に補助記憶装置２２に格納された運用自動化ソフトウェア２６が主記憶装置２１に読み出され、この運用自動化ソフトウェア２６がＣＰＵ２０に実行されることによりサービステンプレートの作成及び実行に関する後述のような各種処理が実行される。
【００２７】
補助記憶装置２２は、例えばハードディスク装置又はＳＳＤ（Solid State Drive）などの大容量の記憶装置から構成され、各種プログラム及び制御データを長期間保持するために利用される。
【００２８】
入力装置２３は、例えば、マウスやキーボードなどから構成され、ユーザが管理サーバ計算機４に対する各種入力等の操作を行う際に利用される。また表示装置２４は、例えば、液晶ディスプレイなどから構成され、ＧＵＩ（Graphical User Interface）や必要な情報を表示するために利用される。
【００２９】
通信装置２５は、例えばＮＩＣ（Network Interface Card）などから構成され、管理サーバ計算機４がネットワーク５を介してＩＴシステム２のサーバ装置６、ストレージ装置７若しくはネットワーク装置８と通信を行い、又は、管理計算機群３のサーバ管理計算機９、ストレージ管理計算機１０若しくはネットワーク管理計算機１１と通信を行う際のプロトコル制御を行う。
【００３０】
（２）運用自動化ソフトウェアの機能
（２−１）本実施の形態による部品並替え機能
次に、かかる管理サーバ計算機４に実装された運用自動化ソフトウェア２６の機能について説明する。なお、以下においては、構成の取得及び取得した構成を基に構成変更内容を定義する処理を含む構成取得部品（Ｇ部品）や、構成取得部品により定義された構成変更内容に対してユーザが確認する処理を含むユーザ確認部品（Ｕ部品）、及び、構成取得部品により定義された内容に従って構成を変更する構成変更部品（Ｅ部品）などを適宜組み合わせた、例えば図２（Ａ）や図２（Ｂ）に示すような管理リソースごとの基本的な一連の処理を定義したサービステンプレートは既に作成されて登録されているものとする。
【００３１】
ここで、図２（Ａ）は、ユーザにより指定された容量の論理ボリュームをユーザにより指定されたストレージ装置７内に作成するための一連の処理が定義されたサービステンプレート３０であり、「G1」という構成取得部品と、「U1」というユーザ確認部品と、「E1」という構成変更部品とから構成される。なお、サービステンプレート３０では、各部品（構成取得部品、ユーザ確認部品及び構成変更部品など）間を接続する矢印の向きに従って処理が流れる。以下の各サービステンプレートにおいても同様である。
【００３２】
そして「G1」という構成取得部品では、指定されたストレージ装置７に関する情報をストレージ管理計算機１０から取得し、取得した情報に基づいて、当該ストレージ装置７内に作成されたプールの中から指定容量の論理ボリュームを作成するのに最適なプールを自動選択する処理が定義されている。
【００３３】
また「U1」というユーザ確認部品では、「G1」で自動選択したプールに関する情報をユーザに提示（表示装置２４に表示）することにより、当該プール上に論理ボリュームを作成することの可否をユーザに確認する処理が定義されている。さらに「E1」という構成変更部品では、「G1」で自動選択したプール上に指定容量の論理ボリュームを作成し、さらに指定されたサーバ装置６又はサーバ装置６内の仮想マシンからこの論理ボリュームへのパスを設定する処理が定義されている。
【００３４】
また図２（Ｂ）は、指定された論理ボリュームを使用するアプリケーションを、指定されたサーバ装置６又は仮想マシンに設定する処理が定義されたサービステンプレート３１であり、「G3」という構成取得部品と、「U3」というユーザ確認部品と、「E3」という構成変更部品とから構成される。
【００３５】
そして「G3」という構成取得部品では、指定されたサーバ装置６又は仮想マシンに実装されたＯＳに応じた最適なアプリケーションを自動選択する処理が定義されている。また「U3」というユーザ確認部品では、「G3」で自動選択したアプリケーションに関する情報をユーザに提示することにより、そのサーバ装置６又はその仮想マシンへの実装の可否をユーザに確認する処理が定義されている。
【００３６】
さらに「E3」という構成変更部品では、「G3」で自動選択したアプリケーションを指定されたサーバ装置６又は仮想マシンに実装し、さらにそのアプリケーションが、指定された論理ボリュームを使用するよう設定を行う処理が定義されている。
【００３７】
本発明は、このような管理リソースごとの基本的なサービステンプレート３０，３１を組み合わることで複数種類の管理リソースを横断する一連の処理を実行させる例えば図３の上段に示すようなサービステンプレート３２を作成する際における、構成取得部品、ユーザ確認部品及び構成変更部品などの部品の自動並替えに関する発明である。
【００３８】
運用自動化ソフトウェア２６（図１）は、ＩＴシステム２の運用を自動化及び効率化するための運用自動化ツールであり、サービステンプレートを作成するための環境であるサービステンプレート作成基盤と、作成されたサービステンプレートを実行する環境であるサービステンプレート実行基盤とを提供する。
【００３９】
サービステンプレートは、主に、構成取得部品、ユーザ確認部品及び構成変更部品などの部品と、各部品の実行値を格納するプロパティとから構成される。プロパティには、部品への入力値（データ入力元や値など）を設定する入力プロパティと、部品への出力値（データ出力先など）を設定する出力プロパティとがある。ただし、以下においては、入力プロパティ及び出力プロパティを特に区別する必要がない場合には、これらをまとめてプロパティと呼ぶものとする。
【００４０】
管理サーバ計算機４では、運用自動化ソフトウェア２６に基づき、サービステンプレートを作成するためのサービステンプレート作成画面と、サービステンプレートごとのプロパティを設定するためのプロパティＧＵＩ画面とを所定操作により表示装置２４に表示させることができる。
【００４１】
図４は、これら画面のうちのサービステンプレート作成画面４０の構成例を示す。この図４からも明らかなように、サービステンプレート作成画面４０は、既存サービステンプレート一覧フィールド４１、フローエディタフィールド４２及びプロパティ表示フィールド４３などを備えて構成される。
【００４２】
既存サービステンプレート一覧フィールド４１は、既に作成されている管理リソースごとの基本的なサービステンプレート（既存サービステンプレート）の一覧（正確には、既存サービステンプレートにそれぞれ対応付けられたアイコン４４の一覧）を表示するためのエリアであり、フローエディタフィールド４２は、これら既存サービステンプレートを組み合わせた新たなサービステンプレートを作成するためのエリアである。
【００４３】
ユーザは、既存サービステンプレート一覧フィールド４１内に表示された各アイコン４４の中から所望する既存サービステンプレートに対応するアイコン４４をドラッグ・アンド・ドロップによりフローエディタフィールド４２内に順次貼り付け、この結果としてフローエディタフィールド４２に表示されるこれらの既存サービステンプレートのアイコン４５間を、所望するその実行順序に従って矢印４６で順次接続することにより、既存サービステンプレートを組み合わせた新たなサービステンプレート４７を作成することができる。
【００４４】
この際、フローエディタフィールド４２では、各既存サービステンプレートのアイコン４５内に、その既存サービステンプレートを構成する構成取得部品、ユーザ確認部品及び構成変更部品などの各部品をそれぞれ表す部品アイコン４８が、その部品の実行順序に並べられ、かつ実行順序に従って矢印で順次接続された状態で表示される。
【００４５】
また各部品アイコン４８内には、対応する部品に付与された識別子を表す文字列が表示される。図４の例では、構成取得部品については「G○」（○はその構成取得部品に固有の数字）、ユーザ確認部品については「U○」（○はそのユーザ確認部品に固有の数字）、構成変更部品については「E○」（○はその構成取得部品に固有の数字）、その他の部品については「X○」（○はその部品に固有の数字）という文字列が表示されている。
【００４６】
さらにプロパティ表示フィールド４３には、フローエディタフィールド４２に表示された各既存サービステンプレートに対応するアイコン４５のうちの、クリックにより選択されたアイコン４５に対応する既存サービステンプレート全体や、当該既存サービステンプレートを構成する各部品についてそれぞれ設定された各プロパティの設定値が表示される。
【００４７】
なおサービステンプレート作成画面４０の右上には、確認ステップ集約ボタン４９が表示される。ユーザは、上述のようにしてフローエディタフィールド４２に新たなサービステンプレート４７を作成した後、この確認ステップ集約ボタン４９をクリックすることにより、後述のように、その新たなサービステンプレート４７を構成する各部品の並替えを管理サーバ計算機４に実行させることができる。このような部品の並替えに関する機能（以下、これを部品並替え機能と呼ぶ）の詳細については、後述する。
【００４８】
図５は、プロパティＧＵＩ画面の構成例を示す。このプロパティＧＵＩ画面５０は、サービステンプレート実行基盤の機能を利用してサービステンプレート４７を実行する際に、必要な既存サービステンプレートや部品のプロパティをユーザが手入力より設定するための画面である。
【００４９】
この図５に示すプロパティＧＵＩ画面５０は、「ストレージ装置内に指定容量の論理ボリュームを設定し、その論理ボリューム及び指定ホスト間のパスを設定する」といった処理が定義された既存サービステンプレートに対して、その論理ボリュームを作成すべきストレージ装置７と、そのストレージ装置７内のその論理ボリュームを作成すべきプールと、その論理ボリュームの容量と、その論理ボリュームとパスで接続するホスト（サーバ装置６又は仮想マシン）とをユーザが指定するためのプロパティＧＵＩ画面の一例である。
【００５０】
この図５の例では、プロパティＧＵＩ画面５０内に、ホスト指定欄５１、ストレージ装置指定欄５２、プール指定欄５３及び図示しない容量指定欄が設けられている。
【００５１】
そしてユーザは、ホスト指定欄５１の右側に設けられたプルダウンボタン５４をクリックすることにより、システム内に存在するすべてのサーバ装置６や仮想マシンの識別子が掲載された図示しないプルダウンメニューを表示させることができる。またユーザは、このプルダウンメニューに表示された識別子の中から所望の識別子を選択することにより、その識別子に対応するサーバ装置６又は仮想マシンをかかる論理ボリュームの接続先のホストとして指定することができる。このとき指定されたストレージ装置７の識別子がストレージ装置指定欄５２に表示される。
【００５２】
またユーザは、ストレージ装置指定欄５２の右側に設けられたプルダウンボタン５５をクリックすることにより、システム内に存在するすべてのストレージ装置７の識別子が掲載された図示しないプルダウンメニューを表示させることができる。またユーザは、このプルダウンメニューに表示された識別子の中から所望の識別子を選択することにより、その識別子に対応するストレージ装置７を、かかる論理ボリュームの作成先のストレージ装置として指定することができる。このとき指定されたストレージ装置７の識別子がストレージ装置指定欄５２に表示される。
【００５３】
さらにユーザは、プール指定欄５３の右側に設けられたプルダウンボタン５６をクリックすることにより、ストレージ装置指定欄５２に識別子が表示されたストレージ装置７内に存在するすべてのプールの識別子が掲載されたプルダウンメニュー５７を表示させることができる。またユーザは、このプルダウンメニュー５７に表示された識別子の中から所望の識別子を選択することにより、その識別子に対応するプールを、かかる論理ボリュームの作成先のプールとして指定することができる。このとき指定されたプールの識別子がプール指定欄５３に表示される。
【００５４】
さらにユーザは、かかる論理ボリュームの容量を、入力装置２３（図１）を介して図示しない容量指定欄に所望する容量を入力することで指定することができる。
【００５５】
ところで、上述のようにして既存サービステンプレートを組み合わせた新たなサービステンプレートを作成してこれを実行する場合、単に既存サービステンプレートを順番に並べるだけでは、作成したサービステンプレートの後方に配置された既存サービステンプレートに含まれるユーザ確認部品の実行時に、システムがユーザから以降の処理を中断する指示を受け付けた場合に、これよりも前の既存サービステンプレート内の構成変更部品の実行時に行った構成変更をロールバックしなければならない手間が生じる。
【００５６】
また図３の上段からも明らかなように、単に既存サービステンプレート３０，３０´，３１を順番に並べるだけでは、作成されたサービステンプレート３２の中に各既存サービステンプレート３０，３０´，３１にそれぞれ含まれるユーザ確認部品（「U1」〜「U3」）が散在することとなり、その新たなサービステンプレート３２の実行時に何度も確認を行わなければならないという煩わしさをユーザに感じさせることとなる。
【００５７】
このような問題を解決するための手段として、例えば図３の下段に示すように、各既存サービステンプレート３０，３０´，３１をそれぞれ構成する部品の順番を変えて、ユーザ確認部品をサービステンプレートにおける実行順番の前方に片寄し、これらユーザ確認部品に基づくユーザの確認をまとめて先に行った上で構成変更（「E1」〜「E3」）を行うように新たなサービステンプレートを再構成する方法も考えられる。
【００５８】
しかしながら、管理リソース間には、明示的に定義されない関連が存在する場合が往々にある。このため、ある構成変更部品によってある管理リソース（「リソースＡ」とする）が影響を受ける場合に、その構成変更部品と、当該構成変更部品の後方にあり「リソースＡ」の情報を取得する他のサービステンプレートの構成取得部品とを並び替えてしまうと、並替え前の構成取得部品により取得される「リソースＡ」の情報と、並替え後の構成取得部品により取得される「リソースＡ」の情報が異なる可能性があるため、実行結果が意図しないものとなるおそれがある。
【００５９】
例えば、作成された新たなサービステンプレートが図３の上段に示すようなものであるとする。ここで、「ボリュームプロビジョニング１」及び「ボリュームプロビジョニング２」という２つの既存サービステンプレート３０，３０´は、いずれも図２（Ａ）について上述したように、指定されたストレージ装置７内に指定容量の論理ボリュームを作成する処理が定義されたサービステンプレートである。また「アプリ設定」という既存サービステンプレート３１は、図２（Ｂ）について上述したように、指定された論理ボリュームを使用するアプリケーションを、指定されたサーバ装置６に設定する処理が定義されたサービステンプレートである。
【００６０】
この新たなサービステンプレート３２において、「ボリュームプロビジョニング１」という既存サービステンプレート３０の「E1」という構成変更部品のプロパティで「70GB」の論理ボリュームを設定するという設定がなされ、同様に、「ボリュームプロビジョニング２」という既存サービステンプレート３０´の「E2」という構成変更部品のプロパティで「70GB」の論理ボリュームを設定するという設定がなされているものとする。
【００６１】
この場合において、構成部品の並べ替えを行わなければ、「ボリュームプロビジョニング１」という既存サービステンプレート３０の「G1」という構成取得部品の実行時に残容量が「100GB」のあるプールが選択された場合には、当該既存サービステンプレート３０の「E1」という構成変更部品の実行時にそのプール上に「70GB」の論理ボリュームが設定されるため当該プールの残容量が「30GB」となることから、続く「ボリュームプロビジョニング２」という既存サービステンプレート３０´の「G2」という構成取得部品の実行時にそのプールが選択されることはない。
【００６２】
しかしながら、この例で図３の下段のようにユーザ確認部品をサービステンプレート３２の前方に片寄し、すべての構成変更を後から行うように新たなサービステンプレート３２を再構成した場合、「ボリュームプロビジョニング１」という既存サービステンプレート３０の「G1」という構成取得部品の実行時と、「ボリュームプロビジョニング２」という既存サービステンプレート３０´の「G2」という構成取得部品の実行時との双方において同一のプールが選択されてしまい、「ボリュームプロビジョニング２」という既存サービステンプレート３０´の「E2」という構成変更部品の実行時にエラーが発生することになる。
【００６３】
このようなエラーは、構成変更部品と、その後方にある構成取得部品とを並べ替えする際、その構成取得部品の対象となる管理リソース（つまり構成取得部品の情報収集対象となる管理リソース）が、その構成変更部品の対象となる管理リソース（つまり構成変更部品によって構成が変更される管理リソース）と同一の場合や、その構成取得部品の対象となる管理リソースが、その構成変更部品により影響を受け得る管理リソースに含まれる場合に発生する。
【００６４】
ここで、「構成取得部品の対象となる管理リソースが、その構成変更部品により影響を受け得る管理リソース」とは、明示的に構成取得部品の対象となる管理リソースが、その前方の構成変更部品の対象となる管理リソースと同一ではないが、図３について上述した「E1」及び「G2」の関係のように、構成取得部品の対象となる管理リソース（図３の例では「プール」）が、その前方の構成変更部品の対象となる管理リソース（図３の例では「論理ボリューム」）の変更によって結果的に影響を受け得る管理リソースに含まれる場合（図３の例では、「プール」は「論理ボリューム」の変更によって結果的に影響を受ける管理リソースに含まれる）を指す。
【００６５】
そこで本実施の形態の管理サーバ計算機４には、複数の既存サービステンプレートを組み合わせた新たなサービステンプレートが作成された場合に、以上のような問題が生じない範囲内において、ユーザ確認部品を新たなサービステンプレートにおける実行順番の前方に片寄し、構成変更部品をできる限り新たなサービステンプレートにおける実行順番の後方に片寄するよう、サービステンプレートの部品の並び替えを行う部品並び替え機能が搭載されている。
【００６６】
実際上、管理サーバ計算機４は、複数の既存サービステンプレートを組み合わせた新たなサービステンプレートが作成された場合に、これらの既存サービステンプレートに含まれる構成変更部品ごとに、その構成変更部品によってそれぞれ影響を受け得る管理リソース（以下、適宜、これを構成変更部品の関連管理リソースと呼ぶ）を、新たなサービステンプレートの定義情報から推定する。
【００６７】
そして管理サーバ計算機４は、構成変更部品及びその後方の構成取得部品の並び替えを行う際に、上述の推定結果に基づいて、構成取得部品の対象となる管理リソースが、その直前の構成変更部品が対象とする管理リソースと同一ではなく、かつ、当該構成変更部品の関連管理リソースに含まれない場合に限り、これら構成変更部品及び構成取得部品の並び替えを実施する。
【００６８】
なお「構成変更部品の関連管理リソースを、新たなサービステンプレートの定義情報から推定する」方法としては、次の２つのパターンごとに、それぞれ以下の方法を利用することができる。
【００６９】
（パターン１）構成変更部品の入力プロパティのデータが、他の部品の出力データから引き継がれる場合
この場合には、その構成変更部品の直前の構成取得部品が対象とする管理リソースを、その構成変更部品の関連管理リソースと推定する。
【００７０】
例えば、図３の上段の例では、「ボリュームプロビジョニング１」という既存サービステンプレート３０の「E1」という構成変更部品（Ｅ部品）の入力プロパティのデータは、「G1」という構成取得部品（Ｇ部品）の出力データから引き継がれる。従って、この場合には、「プール」が「E1」という構成変更部品の関連管理リソースに含まれると推定することができる。
【００７１】
一方、図３の上段の「ボリュームプロビジョニング２」という既存サービステンプレート３０´の「G2」という構成取得部品が情報を取得する管理リソースも「プール」である。従って、「G2」という構成取得部品の対象となる管理リソースが、「E1」という構成変更部品の関連管理リソースに含まれるため、「E1」という構成変更部品と、「G2」という構成取得部品との並び替えは行わない。
【００７２】
（パターン２）構成変更部品の入力プロパティのデータが、ユーザによって入力される場合
この場合には、その構成変更部品の入力プロパティのデータに基づいて、その構成変更部品の関連管理リソースを推定する。
【００７３】
例えば、図３の例において、「ボリュームプロビジョニング１」という既存サービステンプレート３０の「E1」という構成変更部品の入力プロパティを、例えば図５のようなプロパティＧＵＩ画面５０を用いてユーザが手入力により定義する仕様の場合を考える。この例では、「E1」という構成変更部品の実行時に構成情報を取得すべき（論理ボリュームを作成すべき）ストレージ装置７及びそのストレージ装置７内のプールをユーザがプルダウンから指定する。このときプロパティＧＵＩ画面５０の設定情報から、当該各プルダウンが情報を取得する対象の管理リソースが、それぞれ「ストレージ」及び「プール」であることが分かる。従って、この場合には、「E1」という構成変更部品の関連管理リソースに「ストレージ」及び「プール」が含まれる。
【００７４】
一方、図３の上段の「ボリュームプロビジョニング２」というサービステンプレートの「G2」という構成取得部品が情報を取得する管理リソースも「プール」である。従って、この例の場合も、「G2」という構成取得部品の対象となる管理リソースが、「E1」という構成変更部品の関連管理リソースに含まれるため、「E1」という構成変更部品と、「G2」という構成取得部品との並び替えは行わない。
【００７５】
以上のような本実施の形態による部品並替え機能を実現するための手段として、本運用自動化ソフトウェア２６は、図１に示すように、サービステンプレート作成部６０、サービステンプレート再構成部６１及びサービステンプレート実行部６４を備えて構成される。またサービステンプレート再構成部６１は、管理リソース間依存推定部６２及び管理リソース間依存提示部６３を備えている。さらに管理サーバ計算機４の補助記憶装置２２には、図１に示すように、サービステンプレート管理テーブル６５、部品管理テーブル６６、プロパティ管理テーブル６７、ステップ管理テーブル６８、実行フロー管理テーブル６９、データフロー管理テーブル７０、プロパティＧＵＩ設定管理テーブル７１及び管理リソース間依存管理テーブル７２が格納されている。
【００７６】
サービステンプレート作成部６０は、サービステンプレートを作成するための環境であるサービステンプレート作成基盤を提供する機能を有するプログラムである。サービステンプレート作成部６０は、図４について上述したサービステンプレート作成画面４０を表示装置２４に表示し、これらサービステンプレート作成画面４０を用いた新たなサービステンプレートの作成を支援する処理を実行する。
【００７７】
またサービステンプレート再構成部６１は、かかるサービステンプレート作成画面４０等を用いて作成された新たなサービステンプレートについて、上述のような部品の自動並替え（サービステンプレートの再構成）を行う機能を有するプログラムである。
【００７８】
管理リソース間依存推定部６２は、サービステンプレート再構成部６１の一部を構成し、当該サービステンプレート再構成部６１がサービステンプレートの再構成を行う際に、並替え対象としている構成変更部品の対象となる管理リソースと、その後方にある構成取得部品の対象となる管理リソースとの間の依存関係を推定する機能を有するプログラムである。なお「管理リソース間の依存関係」とは、かかる構成変更部品及びかかる構成取得部品の対象となる管理リソースが同一、又は、構成取得部品の管理リソースが構成変更部品の関連管理リソースに含まれる関係を指す。
【００７９】
また管理リソース間依存提示部６３は、サービステンプレート再構成部６１の一部を構成し、当該管理リソース間依存推定部６２の推定結果を図２８について後述する依存関係問合せ画面９０を表示装置２４に表示するようにしてユーザに提示し、これら２つの部品の並替えの可否をユーザに問い合わせる機能を有するプログラムである。
【００８０】
さらにサービステンプレート実行部６４は、サービステンプレート作成画面４０等を用いて作成されたサービステンプレートを実行するための環境であるサービステンプレート実行基盤を提供する機能を有するプログラムである。サービステンプレート実行部６４は、作成されたサービステンプレートに従って、必要なタイミングで必要なコマンドを対応する管理計算機（サーバ管理計算機９（図１）、ストレージ管理計算機１０（図１）又はネットワーク管理計算機１１（図１））に送信することにより、サービステンプレートにより定義された一連の処理を実行する。
【００８１】
一方、サービステンプレート管理テーブル６５は、既に作成されているサービステンプレート（既存サービステンプレート）を管理するために利用されるテーブルであり、図６に示すように、番号欄６５Ａ、テンプレートＩＤ欄６５Ｂ及びテンプレート名欄６５Ｃを備えて構成される。図６のサービステンプレート管理テーブル６５では、１つのレコード（行）が１つの既存サービステンプレートに対応する。
【００８２】
そして番号欄６５Ａには、サービステンプレート管理テーブル６５においてそのレコード（行）に付与された番号（通し番号）が格納される。またテンプレートＩＤ欄６５Ｂには、対応する既存サービステンプレートに対して付与されたその既存サービステンプレートに固有の識別子（テンプレートＩＤ（IDentification））が格納される。さらにテンプレート名欄６５Ｃには、対応する既存サービステンプレートに対してユーザにより任意に設定されたその既存サービステンプレートの名称（サービステンプレート名）が格納される。
【００８３】
従って、図６の例では、サービステンプレート管理テーブル６５において「１」という番号が付与されたレコードに対応する既存サービステンプレートは、「TEMPL1」というテンプレートＩＤが付与された「アプリＡ環境構築」というテンプレート名の既存サービステンプレートであることが示されている。
【００８４】
このサービステンプレート管理テーブル６５は、サービステンプレート作成画面４０の既存サービステンプレート一覧フィールド４１やフローエディタフィールド４２に各既存サービステンプレートのアイコン４４，４５（図４）を表示する際、対応する既存サービステンプレートのテンプレートＩＤやテンプレート名をそのアイコン４４，４５内に表示するときに参照される。
【００８５】
また部品管理テーブル６６は、いずれかの既存サービステンプレートに利用されている構成取得部品、ユーザ確認部品及び構成変更部品などの各部品を管理するために利用されるテーブルであり、図７に示すように、番号欄６６Ａ、部品ＩＤ欄６６Ｂ、処理タイプ欄６６Ｃ、対象管理リソースタイプ欄６６Ｄを備えて構成される。図７の部品管理テーブル６６では、１つのレコード（行）が１つの部品に対応する。
【００８６】
そして番号欄６６Ａには、部品管理テーブル６６においてそのレコードに付与された番号（通し番号）が格納され、部品ＩＤ欄６６Ｂには、対応する部品に付与されたその部品に固有の識別子（部品ＩＤ）が格納される。また処理タイプ欄６６Ｃには、対応する部品を実行することにより行われる処理のタイプ（構成取得、ユーザ確認又は構成変更など）が格納され、対象管理リソースタイプ欄６６Ｄには、対応する部品を実行するときの対象となるリソースのタイプが格納される。
【００８７】
従って、図７の例では、部品管理テーブル６６において「２」という番号が付与されたレコードに対応する部品は、部品ＩＤが「PGL2」、処理タイプが「構成取得」であり、「Pool」を対象とする部品（構成取得部品）であることが示されている。
【００８８】
この部品管理テーブル６６は、サービステンプレート作成画面４０のフローエディタフィールド４２に表示された各部品アイコン４８内に対応する部品のタイプ（構成取得部品、ユーザ確認部品又は構成変更部品など）を表す文字（「G1」、「U1」、「E1」など）を表示するときなどに参照される。
【００８９】
プロパティ管理テーブル６７は、各既存サービステンプレートや、既存サービステンプレートを構成する各部品にそれぞれ設定すべきプロパティ（入力プロパティ及び出力プロパティ）を管理するために利用されるテーブルであり、図８に示すように、番号欄６７Ａ、プロパティＩＤ欄６７Ｂ、所属要素欄６７Ｃ、プロパティ名欄６７Ｄ及び種別欄６７Ｅを備えて構成される。図８のプロパティ管理テーブル６７では、１つのレコード（行）が１つのプロパティに対応する。
【００９０】
そして番号欄６７Ａには、プロパティ管理テーブル６７においてそのレコードに付与された番号（連通し番号）が格納され、プロパティＩＤ欄６７Ｂには、対応するプロパティに付与されたそのプロパティに固有の識別子（プロパティＩＤ）が格納される。
【００９１】
また所属要素欄６７Ｃには、対応するプロパティが定義されている既存サービステンプレート（「TEMPL」）や部品（「PLG」）の識別子（テンプレートＩＤ及び部品ＩＤ）が格納され、プロパティ名欄６７Ｄには、対応するプロパティに対してユーザにより任意に設定されたそのプロパティの名称（プロパティ名）が格納される。
【００９２】
さらに種別欄６７Ｅには、対応するプロパティの種別（入力プロパティ又は出力プロパティ）が格納される。本実施の形態の場合、対応するプロパティが入力プロパティの場合には種別欄６７Ｅに「IN」が格納され、対応するプロパティが出力プロパティの場合には種別欄６７Ｅに「OUT」が格納される。
【００９３】
従って、図８の例では、例えば「PROP1」は「ホスト」をプロパティ名とする「入力プロパティ（「IN」）」、「PROP2」は「ストレージ」をプロパティ名とする「入力プロパティ（「IN」）」、「PROP3」及び「PROP4」は「ボリューム容量」をプロパティ名とする「入力プロパティ（「IN」）」であり、これら「PROP1」〜「PROP4」という各プロパティはいずれも「TEMPL1」という既存サービステンプレートで定義されていることが示されている。
【００９４】
ステップ管理テーブル６８は、各既存サービステンプレートをそれぞれ構成する各ステップを管理するために利用されるテーブルである。ここで、「ステップ」とは、その既存サービステンプレートの構成要素を指す。例えば、既存サービステンプレートが複数の既存サービステンプレートを組み合わせて作成されている場合には、これら既存サービステンプレート１つ１つがそのサービステンプレートの１つのステップとなる。またこれら既存サービステンプレートが複数の部品（構成取得部品、ユーザ確認部品及び構成変更部品など）を組み合わせて作成されている場合には、これら部品の１つ１つがその既存サービステンプレートの１つのステップとなる。
【００９５】
このステップ管理テーブル６８は、図９に示すように、番号欄６８Ａ、ステップＩＤ欄６８Ｂ、親テンプレート欄６８Ｃ及びステップ構成要素欄６８Ｄを備えて構成される。図９のステップ管理テーブル６８では、１つのレコード（行）が１つのステップに対応する。
【００９６】
そして番号欄６８Ａには、ステップ管理テーブル６８においてそのレコードに付与された番号（連番）が格納され、ステップＩＤ欄６８Ｂには、対応するステップに対して付与されたそのステップに固有の識別子（ステップＩＤ）が格納される。また親テンプレート欄６８Ｃには、対応するステップが定義された既存サービステンプレートのテンプレートＩＤが格納され、ステップ構成要素欄６８Ｄには、対応するステップの具体的な内容となる他のテンプレートのテンプレートＩＤ又は部品の部品ＩＤが格納される。
【００９７】
従って、図９の例では、「STEP4」〜「STEP6」という各ステップは「TEMPL2」という既存サービステンプレートで定義され、このうち「STEP4」というステップは「PLG2」という部品から構成され、「STEP5」というステップは「PLG1」という部品から構成され、「STEP6」というステップは「PLG3」という部品から構成されていることが示されている。
【００９８】
また図９では、「STEP1」〜「STEP3」という各ステップは「TEMPL1」というサービステンプレートで定義され、このうち「STEP1」及び「STEP2」という各ステップはいずれも「TEMPL2」という既存サービステンプレートから構成され、「STEP3」というステップは「TEMPL3」という既存サービステンプレートから構成されていることが示されている（図３の上段参照）。
【００９９】
実行フロー管理テーブル６９は、各既存サービステンプレートにおける各ステップの実行順番を管理するために利用されるテーブルであり、図１０に示すように、番号欄６９Ａ、実行フローＩＤ欄６９Ｂ、親テンプレート欄６９Ｃ、From欄６９Ｄ及びTo欄６９Ｅを備えて構成される。図１０の実行フロー管理テーブル６９における１つのレコードは、既存サービステンプレートにおける連続する２つのステップ間における処理の流れ（実行フロー）を表す。
【０１００】
そして番号欄６９Ａには、実行フロー管理テーブル６９においてそのレコードに付与された番号（連番）が格納される。また実行フローＩＤ欄６９Ｂには、対応する実行フローに対して付与されたその実行フローに固有の識別子（実行フローＩＤ）が格納され、親テンプレート欄６９Ｃには、その実行フローが定義された既存サービステンプレートのテンプレートＩＤが格納される。
【０１０１】
さらにFrom欄６９Ｄには、対応する実行フローにおいて前に実行されるステップのステップＩＤが格納され、To欄６９Ｅには、その実行フローにおいて当該ステップの後に実行されるステップのステップＩＤが格納される。
【０１０２】
従って、図１０の例では、例えば、「TEMP1」という既存サービステンプレートでは「EF1」及び「EF2」という実行フローが定義されており、「EF1」という実行フローは、「STEP1」というステップに続けて「STEP2」というステップを実行する処理の流れを表し、「EF2」という実行フローは「STEP2」というステップに続けて「STEP3」というステップを実行する処理の流れを表していることが示されている。
【０１０３】
この実行フロー管理テーブル６９及び図９について上述したステップ管理テーブル６８を併せて参照することにより、既存サービステンプレートを構成する部品と、その既存サービステンプレートにおけるこれら部品の並びとを認識でき、その既存サービステンプレートにおける処理の流れの概要を表す図４に示すようなアイコン４５を生成することができる。従って、これらステップ管理テーブル６８及び実行フロー管理テーブル６９は、サービステンプレート作成画面４０のフローエディタフィールド４２などにかかるアイコン４５を表示する際に参照される。
【０１０４】
データフロー管理テーブル７０は、各サービステンプレートにおいて、どのステップのどのプロパティの出力データが、どのステップのどのプロパティの入力データとなるかといったプロパティ間のデータの流れ（以下、これをデータフローと呼ぶ）を管理するために利用されるテーブルであり、図１１に示すように、番号欄７０Ａ、データフローＩＤ欄７０Ｂ、親テンプレート欄７０Ｃ、From欄７０Ｄ及びTo欄７０Ｅを備えて構成される。図１１のデータフロー管理テーブル７０では、１つのレコード（行）が１つのデータフローに対応する。
【０１０５】
そして番号欄７０Ａには、データフロー管理テーブル７０においてそのレコードに付与された番号（連番）が格納される。またデータフローＩＤ欄７０Ｂには、対応するデータフローに対して付与されたそのデータフローに固有の識別子（データフローＩＤ）が格納され、親テンプレート欄７０Ｃには、そのデータフローが定義された既存サービステンプレートのテンプレートＩＤが格納される。
【０１０６】
さらにFrom欄７０Ｄは親ステップ欄７０ＤＡ及びプロパティ欄７０ＤＢから構成されており、その親ステップ欄７０ＤＡには、対応するデータフローにおけるデータの送信元となるステップ（親ステップ）のステップＩＤが格納され、そのプロパティ欄７０ＤＢには、その親ステップから送信されるデータのプロパティのプロパティＩＤが格納される。なお、図１１において、From欄７０Ｄの親ステップ欄７０ＤＡに格納された「SELF」という表記は、そのプロパティ欄７０ＤＢに格納されたプロパティが、当該データフローが定義された親テンプレートに定義されたプロパティであることを示す。
【０１０７】
同様に、To欄７０Ｅも親ステップ欄７０ＥＡ及びプロパティ欄７０ＥＢから構成されており、その親ステップ欄７０ＥＡには、対応するデータフローにおけるデータの送信先となるステップ（親ステップ）のステップＩＤが格納され、そのプロパティ欄７０ＥＢには、その親ステップのデータ送信先となるプロパティのプロパティＩＤが格納される。
【０１０８】
従って、図１１の例では、「DF1」というデータフローは、「TEMPL1」という既存サービステンプレートで定義されており、その既存サービステンプレート（「SELF」）の「PROP1」という入力プロパティのデータが、その既存サービステンプレートの「STEP1」というステップの「PROP5」という入力プロパティのデータとして与えられることが示されている。
【０１０９】
このデータフロー管理テーブル７０及び図８について上述したプロパティ管理テーブル６７を併せて参照することにより、各既存サービステンプレート内における各部品間のデータの流れや、既存サービステンプレートを組み合わせて作成された新たなサービステンプレートにおける既存サービステンプレート間のデータの流れを認識することができる。
【０１１０】
従って、これらデータフロー管理テーブル７０及びプロパティ管理テーブル６７は、サービステンプレート作成画面４０のプロパティ表示フィールド４３内に、指定されたステップのプロパティの設定値を表示するときや、作成されたサービステンプレートを実行する際、部品ごとのデータの入力元やデータの出力先をサーバ管理計算機９、ストレージ管理計算機１０及び又はネットワーク管理計算機１１などに対して指示するときに参照される。
【０１１１】
プロパティＧＵＩ設定管理テーブル７１は、ユーザがサービステンプレートの実行時にプロパティの値を指定するために利用するプロパティＧＵＩ画面（例えば図５参照）の定義情報を管理するために利用されるテーブルであり、図１２に示すように、番号欄７１Ａ、プロパティＧＵＩ定義ＩＤ欄７１Ｂ、プロパティ欄７１Ｃ、ＧＵＩタイプ欄７１Ｄ及び管理リソース欄７１Ｅを備えて構成される。図１２のプロパティＧＵＩ設定管理テーブル７１では、１つのレコード（行）がプロパティＧＵＩ画面における１つの設定項目（例えば図５の「ホスト」、「ストレージ」、「プール」又は「容量」）に対応する。
【０１１２】
そして番号欄７１Ａには、プロパティＧＵＩ設定管理テーブル７１においてそのレコードに付与された番号（連番）が格納される。またプロパティＧＵＩ定義ＩＤ欄７１Ｂには、対応する設定項目に対して付与されたその設定項目に固有の識別子（プロパティＧＵＩ定義ＩＤ）が格納され、プロパティ欄７１Ｃには、対応する設定項目により設定されるプロパティのプロパティＩＤが格納される。
【０１１３】
またＧＵＩタイプ欄７１Ｄには、対応するプロパティに関する情報を取得するタイプ（以下、これをＧＵＩタイプと呼ぶ）が格納される。例えば、プロパティのＧＵＩタイプが、ユーザがプロパティＧＵＩ画面５０等を用いて、サーバ管理計算機９（図１）や、ストレージ管理計算機１０（図１）又はネットワーク管理計算機１１（図１）などの外部リソースから取得された情報の中から選択するタイプである場合には「外部リソース参照」という情報が格納され、プロパティのＧＵＩタイプが、例えば論理ボリュームの容量のようにユーザがプロパティＧＵＩ画面５０等を用いて定義するタイプである場合には「直接入力」という情報が格納される。さらに管理リソース欄７１Ｅには、対応する設定項目の対象となる管理リソースのリソースタイプが格納される。
【０１１４】
従って、図１２の例では、「P-GUI1」というプロパティＧＵＩ定義ＩＤが付与された設定項目は、「PROP22」というプロパティに対応し、外部から情報を取得するＧＵＩタイプ（「外部リソース参照」）であり、対象となる管理リソースは「Host（サーバ装置６又は仮想マシン）」であることが示されている。
【０１１５】
このプロパティＧＵＩ設定管理テーブル７１も、作成されたサービステンプレートを実行する際、部品ごとのデータの入力元やデータの出力先をサーバ管理計算機９、ストレージ管理計算機１０及び又はネットワーク管理計算機１１に対して指示を与えるときに参照される。
【０１１６】
管理リソース間依存管理テーブル７２は、管理サーバ計算機４が図２８について後述する依存関係問合せ画面９０を用いてユーザに問い合わせた管理リソース間の依存関係を管理するために利用されるテーブルである。この管理リソース間依存管理テーブル７２は、図１３に示すように、番号欄７２Ａ、管理リソース依存ＩＤ欄７２Ｂ、依存元管理リソース欄７２Ｃ、依存先管理リソース欄７２Ｄ、ユーザ判定回数欄７２Ｅ、「依存あり」回答回数欄７２Ｆ及び確度欄７２Ｇを備えて構成される。図１３の管理リソース間依存管理テーブル７２では、１つのレコード（行）が１つの管理リソース間の依存関係に対応する。
【０１１７】
そして番号欄７２Ａには、管理リソース間依存管理テーブル７２においてそのレコードに付与された番号（連番）が格納される。また管理リソース依存ＩＤ欄７２Ｂには、対応する管理リソース間の依存関係に対して付与されたその依存関係に固有の識別子（管理リソース依存ＩＤ）が格納される。
【０１１８】
また依存元管理リソース欄７２Ｃには、対応する依存関係において依存元となる管理リソースのリソース名が格納され、依存先管理リソース欄７２Ｄには、対応する依存関係において依存先となる管理リソースのリソース名が格納される。
【０１１９】
さらにユーザ判定回数欄７２Ｅには、依存元管理リソース欄７２Ｃにリソース名が格納された管理リソースと、依存先管理リソース欄７２Ｄにリソース名が格納された管理リソースとの依存関係を、かかる依存関係問合せ画面９０（図２８）を用いてユーザに問い合わせた回数（以下、これをユーザ判定回数と呼ぶ）が格納される。
【０１２０】
また「依存あり」回答回数欄７２Ｆには、かかる問合せに対して、ユーザがこれら２つの管理リソース間に依存関係があると回答した回数（以下、これを「依存あり」回答回数と呼ぶ）が格納される。
【０１２１】
さらに、確度欄７２Ｇには、依存元管理リソース欄７２Ｃにリソース名が格納された管理リソースと、依存先管理リソース欄７２Ｄにリソース名が格納された管理リソースとが依存関係があることの確度が格納される。なお、この確度は、ユーザ判定回数に対する「依存あり」回答回数の百分率である。
【０１２２】
従って、図１３の例では、「DEP1」という管理リソース依存ＩＤが付与された、「Pool」という管理リソース（プール）と「Volume」という管理リソース（論理ボリューム）との依存関係については、これまでのユーザ判定回数が「100」、「依存あり」回答回数が「80」であり、これらに基づいて算出されたその確度が「80％」であることが示されている。
【０１２３】
この管理リソース間依存管理テーブル７２は、依存元管理リソース欄７２Ｃにリソース名が格納された管理リソースと、依存先管理リソース欄７２Ｄにリソース名が格納された管理リソースとの依存関係をユーザに問い合わせる依存関係問合せ画面９０を表示装置２４（図１）に表示する際、ユーザがこれら２つの管理リソースの依存関係を判定するときの参考として、それまでのユーザ判定回数や、「依存あり」回答回数及び確度を表示する際に参照される（図２８参照）。
【０１２４】
（２−２）部品並替え機能に関する各種処理
次に、かかる本実施の形態の部品並替え機能に関連して本実施の形態の管理サーバ計算機４において実行される処理（以下、これを部品並替え処理と呼ぶ）の具体的な処理内容について、図１４〜図２５を参照して説明する。なお、以下においては、部品並替え処理の処理主体をいずれかの「プログラム」として説明するが、実際上は、その「プログラム」に基づいて、ＣＰＵ２０（図１）がその処理を実行することは言うまでもない。
【０１２５】
また以下においては、かかる部品並替え処理の対象となる新たなサービステンプレートが図２６（Ａ）に示すようなものであるものとする。このサービステンプレート８０は、指定容量の新たな第１の論理ボリュームを指定された第１のストレージ装置７（図１）内に作成し、その第１の論理ボリュームに対して指定されたホスト（ここでは仮想マシン）を割り当てた上でデータストア（Datastore）にこれらの情報を設定すると共に、作成した第１の論理ボリュームのリモートコピー（複製）用の第２の論理ボリュームを指定された第２のストレージ装置７内に作成し、第１及び第２の論理ボリュームをコピーペアに設定する、という一連の処理を定義したものである。
【０１２６】
ここで、かかるサービステンプレート８０における「ボリューム作成（ｐ）」というステップ（既存サービステンプレート）は、指定された第１のストレージ装置７内に指定容量の第１の論理ボリュームを作成する処理の流れを定義したものであり、「G1」という構成取得部品と、「U1」というユーザ確認部品と、「E1」という構成変更部品とから構成される。そして「G1」では、第１の論理ボリュームの作成先の第１のストレージ装置７内の各プールの情報をストレージ管理計算機１０（図１）から取得して第１の論理ボリュームを作成するのに最適なプールを選択するという処理が定義されている。また「E1」では、「G1」で選択したプール上に指定容量の第１の論理ボリュームを作成するようストレージ管理計算機１０に指示を与える処理が定義されている。
【０１２７】
また「ホスト追加」というステップ（既存サービステンプレート）は、「ボリューム作成（ｐ）」というステップで作成した第１の論理ボリュームを使用するホストとして、指定された仮想マシンを第１のストレージ装置７に登録する処理の流れを規定したものであり、「G2」という構成取得部品と、「U2」というユーザ確認部品と、「E2」という構成変更部品とから構成される。そして「G2」では、かかる仮想マシンが作成されたサーバ装置６のネットワークアドレスをネットワーク管理計算機１１（図１）から取得するという処理が定義されている。また「E2」では、そのネットワークアドレスを第１のストレージ装置７に登録するようストレージ管理計算機１０に指示を与える処理が定義される。
【０１２８】
さらに「ホスト割当て」というステップ（既存サービステンプレート）は、かかる仮想マシンから第１のストレージ装置７までのパスを設定する処理の流れを規定したものであり、「G3」という構成取得部品と、「U3」というユーザ確認部品と、「E3」という構成変更部品とから構成される。そして「G3」では、仮想マシン及び第１のストレージ装置７間を接続する図示しないネットワークのゾーニング情報をネットワーク管理計算機１１から取得してかかるパスを作成するための最適なゾーニングを選択するという処理が定義されている。また「E3」では、「G3」で選択したゾーニング内にかかる仮想マシンから第１のストレージ装置７までのパスを作成するようネットワーク管理計算機１１に指示を与える処理が定義される。
【０１２９】
「Datastore設定」というステップ（既存サービステンプレート）は、ユーザ入力値からデータストア（Datastore）を作成するための詳細パラメータ（例えば、第１の論理ボリュームの容量）を、かかる仮想マシンを管理するサーバ管理計算機９（図１）に設定する処理の流れを規定したものであり、「X1」という部品と、「U4」というユーザ確認部品と、「E4」という構成変更部品とから構成される。そして「X1」では、ユーザ入力値からデータストアを作成するための詳細パラメータを決定する処理が定義されている。また「E4」では、「X1」で決定した詳細パラメータを対応する仮想マシンに設定するようサーバ管理計算機９に指示を与える処理が定義される。
【０１３０】
また「ボリューム作成（ｓ）」というステップ（既存サービステンプレート）は、「ボリューム作成（ｐ）」というステップと同様の処理を規定したものであり、「G4」という構成取得部品と、「U5」というユーザ確認部品と、「E5」という構成変更部品とから構成される。そして「G4」では、第２の論理ボリュームの作成先の第２のストレージ装置７内の各プールの情報をストレージ管理計算機１０から取得して第２の論理ボリュームを作成するのに最適なプールを選択するという処理が定義されている。また「E5」では、「G4」で選択したプール上に指定容量の第２の論理ボリュームを作成するようストレージ管理計算機１０に指示を与える処理が定義されている。
【０１３１】
さらに「コピーペア設定」というステップ（既存サービステンプレート）は、「ボリューム作成（ｐ）」というステップで作成した第１の論理ボリュームと、「ボリューム作成（ｓ）」というステップで作成した第２の論理ボリュームとをコピーペアに設定する処理の流れを定義したものであり、「X2」という構成取得部品と、「U6」というユーザ確認部品と、「E6」という構成変更部品とから構成される。そして「X2」では、ユーザ入力値からかかるコピーペアを作成するための詳細パラメータを決定する処理が定義されている。また「E6」では、第１及び第２のストレージ装置７に対して、「X2」で決定した詳細パラメータに従って第１及び第２の論理ボリュームをコピーペアに設定するようストレージ管理計算機１０に指示を与える処理が定義される。
【０１３２】
なお、かかるサービステンプレート８０を構成する各部品間のデータ依存関係を図２７に示す。ここで「部品間のデータ依存関係」とは、ある部品Ａから関連を辿り、これよりも後方の部品Ｂに到達するデータパスが存在する関係である。例えば、ある部品Ａの出力プロパティを入力プロパティとする部品Ｂがある場合や、ある部品Ｂの入力プロパティがこれよりも前方にある部品Ａの出力プロパティの影響を受ける場合に、これら部品Ａ及び部品Ｂ間に「データ依存関係」があると言うことができる。
【０１３３】
この図２７からも明らかなように、各既存テンプレートにおいて、ユーザ確認部品（「U1」〜「U6」）は直前の構成取得部品等の部品（「G1」〜「G4」、「X1」、「X2」）の処理結果を表示してユーザの確認を求めるものであるため、ユーザ確認部品と、その直前の構成取得部品等との間には「データ依存関係」がある。また構成変更部品（「E1」〜「E6」）は、その直前のユーザ確認部品（「U1」〜「U6」）によるユーザの確認結果に基づいて構成を変更するものであるため、構成変更部品と、その直前のユーザ確認部品との間にも「データ依存関係」がある。
【０１３４】
さらに「ホスト割当て」というステップでは、「ボリューム作成（ｐ）」というステップで第１の論理ボリュームを作成した第１のストレージ装置７からサーバ装置６までのパスを設定するため、「ボリューム作成（ｐ）」というステップの構成変更部品（「E1」）と、「ホスト割当て」というステップの構成取得部品（「G3」）との間にも「データ依存関係」がある。
【０１３５】
さらに「コピーペア設定」というステップでは、「ボリューム作成（ｐ）」というステップで作成した第１の論理ボリュームと、「ボリューム作成（ｓ）」というステップで作成した第２の論理ボリュームとのコピーペアを設定するため、「コピーペア設定」というステップの「X2」という部品は、「ボリューム作成（ｐ）」というステップの構成設定部品（「E1」）と、「ボリューム作成（ｓ）」というステップの構成設定部品（「E5」）との双方と「データ依存関係」がある。
【０１３６】
（２−２−１）部品並替え処理
図１４は、図４について上述したサービステンプレート作成画面４０のフローエディタフィールド４２において、図２６（Ａ）について上述した新たなサービステンプレート８０がユーザにより作成され、その後、サービステンプレート作成画面４０の右上に設けられた確認ステップ集約ボタン４９（図４）がクリックされた場合に実行される部品並替え処理の具体的な処理内容を示す。
【０１３７】
実際上、かかる状態において確認ステップ集約ボタン４９がクリックされると、サービステンプレート再構成部６１（図１）が起動して、まず、そのとき作成されたサービステンプレート（以下、これを対象サービステンプレートと呼ぶ）８０について、その対象サービステンプレート８０に含まれる各構成変更部品（「E1」〜「E6」）をできる限り対象サービステンプレート８０の後方に片寄せ（図２６（Ａ）の右側に片寄せ）するサービステンプレート再構成処理を実行する（Ｓ１）。
【０１３８】
続いて、サービステンプレート再構成部６１は、サービステンプレート再構成処理を施した対象サービステンプレート８０について、集約可能なユーザ確認部品（「U1」〜「U6」）同士をそれぞれ集約するＵ部品集約処理を実行し（Ｓ２）、この後、この部品並替え処理を終了する。
【０１３９】
（２−２−１−１）サービステンプレート再構成処理
図１５は、図１４について上述した部品並替え処理のステップＳ１においてサービステンプレート再構成部６１により実行されるサービステンプレート再構成処理の具体的な処理内容を示す。
【０１４０】
サービステンプレート再構成部６１は、部品並替え処理のステップＳ１に進むと、この図１５に示すサービステンプレート再構成処理を開始し、まず、対象サービステンプレート８０に含まれる各構成変更部品（Ｅ部品）をできる限り対象サービステンプレート８０の後方に片寄せする構成変更部品片寄せ処理を実行する（Ｓ１０）。この構成変更部品片寄せ処理により、例えば、図２６（Ａ）について上述した対象サービステンプレート８０における各部品の並び順は、図２６（Ｂ）のようになる。
【０１４１】
またサービステンプレート再構成部６１は、この後、対象サービステンプレート８０の部品を並び替えることにより得られた図２６（Ｂ）の対象サービステンプレート８１内に散在する各ユーザ確認部品（Ｕ部品）をできる限り対象サービステンプレート８１の後方の構成変更部品の直前にまとめた状態に片寄せするユーザ確認部品片寄せ処理を実行する（Ｓ１１）。このユーザ確認部品片寄せ処理により、図２６（Ｂ）の対象サービステンプレート８１における各部品の並び順が図２６（Ｃ）のようになる。そしてサービステンプレート再構成部６１は、この後、このサービステンプレート再構成処理を終了して図１４の部品並替え処理に戻る。
【０１４２】
（２−２−１−１−１）構成変更部品片寄せ処理
図１６は、図１５について上述したサービステンプレート再構成処理のステップＳ１０においてサービステンプレート再構成部６１により実行される構成変更部品片寄せ処理の具体的な処理内容を示す。
【０１４３】
この構成変更部品片寄せ処理は、対象サービステンプレート８０内の構成変更部品以外の各構成部品を対象サービステンプレート８０の前方（図２６（Ａ）の左側）に移動させることにより、結果的に構成変更部品を処理の後方に片寄せする処理である。このように構成変更部品以外の各構成部品を移動させて構成変更部品を移動させないことにより、対象サービステンプレート８０の再構成を実行する前後で、構成変更部品の実行順が変更されないことが担保される。
【０１４４】
実際上、サービステンプレート再構成部６１は、サービステンプレート再構成処理のステップＳ１０に進むと、この図１６に示す構成変更部品片寄せ処理を開始し、まず、対象サービステンプレート８０を構成する各部品のうち、最も対象サービステンプレート８０の前方に位置する未処理の部品を１つ選択する（Ｓ２０）。
【０１４５】
続いて、サービステンプレート再構成部６１は、ステップＳ２０で選択した部品（以下、これを選択部品と呼ぶ）が構成変更部品（Ｅ部品）であるか否かを、サービステンプレート作成画面４０のフローエディタフィールド４２で作成された対象サービステンプレート８０の定義情報（以下、これを対象サービステンプレート定義情報と呼ぶ）を参照して判断する（Ｓ２１）。
【０１４６】
実際上、サービステンプレート再構成部６１は、かかる対象サービステンプレート定義情報を内部的に保持している。この対象サービステンプレート定義情報は、ユーザがサービステンプレート作成画面４０のフローエディタフィールド４２で対象サービステンプレート８０を作成する過程でサービステンプレート作成部６０（図１）がサービステンプレート管理テーブル６５（図１）などの各管理テーブルから収集した、その対象サービステンプレート８０を構成する既存サービステンプレートや部品、これらの接続関係や並び順、これらの各プロパティの設定値などのその対象サービステンプレート８０に関するすべての情報である。
【０１４７】
そしてサービステンプレート再構成部６１は、このステップＳ２１において、かかる対象サービステンプレート定義情報を参照して、選択部品が構成変更部品であるか否かを判断する。そしてサービステンプレート再構成部６１は、この判断で肯定結果を得るとステップＳ２３に進む。
【０１４８】
これに対して、サービステンプレート再構成部６１は、ステップＳ２１の判断で否定結果を得ると、選択部品を可能な限り対象サービステンプレート８０の前方に移動させる部品移動処理を実行する（Ｓ２２）。そしてサービステンプレート再構成部６１は、この後、対象サービステンプレート８０を構成するすべての部品についてステップＳ２０〜ステップＳ２２の処理を実行し終えたか否かを判断する（Ｓ２３）。
【０１４９】
サービステンプレート再構成部６１は、この判断否定結果を得るとステップＳ２０に戻り、この後ステップＳ２０で選択する部品を未処理の他の部品に順次切り替えながら、ステップＳ２０〜ステップＳ２３の処理を繰り返す。
【０１５０】
そしてサービステンプレート再構成部６１は、やがて対象サービステンプレート８０を構成するすべての部品についてステップＳ２０〜ステップＳ２３の処理を実行し終えることによりステップＳ２３で肯定結果を得ると、この構成変更部品片寄せ処理を終了してサービステンプレート再構成処理（図１５）に戻る。
【０１５１】
（２−２−１−１−２）部品移動処理
図１７は、図１６について上述した構成変更部品片寄せ処理のステップＳ２２においてサービステンプレート再構成部６１により実行される部品移動処理の具体的な処理内容を示す。
【０１５２】
サービステンプレート再構成部６１は、構成変更部品片寄せ処理のステップＳ２２に進むと、この図１７に示す部品移動処理を開始し、まず、上述の対象サービステンプレート定義情報を参照して、対象サービステンプレート８０における選択部品の直前（図２６（Ａ）における選択部品の直ぐ左側）に何らかの部品（以下、これを直前部品と呼ぶ）が存在するか否かを判断する（Ｓ３０）。そしてサービステンプレート再構成部６１は、この判断で否定結果を得ると、この部品移動処理を終了して構成変更部品片寄せ処理（図１６）に戻る。
【０１５３】
これに対して、サービステンプレート再構成部６１は、ステップＳ３０の判断で肯定結果を得ると、かかる対象サービステンプレート定義情報を参照して、直前部品が分岐となる部品であるか否か（図２６（Ａ）において直前部品が複数の後方の部品と矢印で接続されているか否か）を判断する（Ｓ３１）。そしてサービステンプレート再構成部６１は、この判断で肯定結果を得ると、この部品移動処理を終了して構成変更部品片寄せ処理（図１６）に戻る。
【０１５４】
これに対して、サービステンプレート再構成部６１は、ステップＳ３１の判断で否定結果を得ると選択部品と直前部品との間にデータ依存関係があるか否かを判定する部品間データ依存関係判定処理を実行する（Ｓ３２）。
【０１５５】
またサービステンプレート再構成部６１は、この後、ステップＳ３２の部品間データ依存関係判定処理により選択部品と直前部品との間にデータ依存関係があると判定したか否かを判断する（Ｓ３３）。そしてサービステンプレート再構成部６１は、この判断で肯定結果を得ると、この部品移動処理を終了して構成変更部品片寄せ処理（図１６）に戻る。
【０１５６】
これに対して、サービステンプレート再構成部６１は、ステップＳ３３の判断で否定結果を得ると、選択部品及び直前部品の順番を入れ替える（Ｓ３４）。またサービステンプレート再構成部６１は、ステップＳ３０に戻り、この後、ステップＳ３０〜ステップＳ３４の処理を繰り返す。
【０１５７】
そしてサービステンプレート再構成部６１は、やがて直前部品がなくなるまで選択部品を処理の前方に移動させ終えることによりステップＳ３０において否定結果を得、又はステップＳ３１若しくはステップＳ３３で肯定結果を得ると、この部品移動処理を終了して構成変更片寄せ処理（図１６）に戻る。
【０１５８】
（２−２−１−１−３）部品間データ依存関係判定処理
図１８は、図１７について上述した部品移動処理のステップＳ３２においてサービステンプレート再構成部６１により実行される部品間データ依存関係判定処理の具体的な処理内容を示す。
【０１５９】
サービステンプレート再構成部６１は、部品移動処理のステップＳ３２に進むと、この図１８に示す部品間データ依存関係判定処理を開始し、まず、上述の対象サービステンプレート定義情報を参照して、選択部品が直前部品にデータ依存しているか否かを判断する（Ｓ４０）。
【０１６０】
ここで、「選択部品が直前部品にデータ依存している」とは、直前部品の出力データを選択部品が入力していることを指す。例えば、図２７において矢印で結ばれた部品間の関係がこれに該当する。そこでサービステンプレート再構成部６１は、このステップＳ４０において、上述した対象サービステンプレート定義情報のうち、直前部品の出力プロパティと、選択部品の入力プロパティとを参照して、直前部品の出力データが選択部品の入力データとなっているか否かを判断する。
【０１６１】
そしてサービステンプレート再構成部６１は、この判断で肯定結果を得ると、選択部品が直前部品にデータ依存していると判定し（Ｓ４３）、この後、この部品間データ依存関係判定処理を終了して部品移動処理（図１７）に戻る。
【０１６２】
これに対して、サービステンプレート再構成部６１は、ステップＳ４０の判断で否定結果を得ると、管理リソース間依存推定部６２（図１）を呼び出し、選択部品の対象とする管理リソースと、直前部品の対象とする管理リソースとの間の依存関係の有無を判定する管理リソース間依存関係判定処理を実行させる（Ｓ４１）。
【０１６３】
ここで、「選択部品に関連する管理リソースと、直前部品に関連する管理リソースとの間の依存関係」とは、図３について上述したように、選択部品の対象となる管理リソースが、直前部品の関連管理リソースに含まれる関係を指す。例えば、図２７の例では、「E1」及び「G4」の関係がこれに該当する。このような関係は、選択部品が構成取得部品で、直前部品が構成変更部品である場合に生じる。
【０１６４】
そこでサービステンプレート再構成部６１により呼び出された管理リソース間依存推定部６２は、このステップＳ４１において、まず、選択部品が構成取得部品で、直前部品が構成変更部品であるか否かを判定する。そして管理リソース間依存推定部６２は、これら選択部品及び直前部品がそのような組合せであった場合に、選択部品が対象とする管理リソースが、直前部品の関連管理リソースに含まれるか否かを対象サービステンプレート定義情報から推定することにより、直前部品に関連する管理リソースと、選択部品に関連する管理リソースとの間の依存関係の有無を判定する。
【０１６５】
なお「選択部品が対象とする管理リソースが直前部品の関連管理リソースに含まれる」か否かを推定する方法としては、上述のように、直前部品（構成変更部品）の入力プロパティのデータが他の部品の出力データから引き継がれる場合（パターン１）には、その直前部品の直前の構成取得部品（Ｇ部品）が情報を取得する対象の管理リソースを、その構成変更部品の関連管理リソースと推定することにより行う。また直前部品の入力プロパティのデータがユーザによって入力される場合（パターン２）には、対象サービステンプレート定義情報に基づいて、その直前部品の関連管理リソースを推定することにより行う。
【０１６６】
そしてサービステンプレート再構成部６１は、ステップＳ４１の管理リソース間依存関係判定処理により、選択部品の管理リソースと直前部品の管理リソースとの間に依存関係があるとの判定結果が得られた場合には（Ｓ４２：ＹＥＳ）、選択部品と直前部品との間にデータ依存関係があると判定し（Ｓ４３）、この後、この部品間データ依存関係判定処理を終了して部品移動処理（図１７）に戻る。
【０１６７】
これに対してサービステンプレート再構成部６１は、ステップＳ４１における管理リソース間依存関係判定処理により、選択部品の管理リソースと、直前部品の管理リソースとの間に依存関係がないとの処理結果が得られた場合には（Ｓ４２：ＮＯ）、選択部品と直前部品との間にデータ依存関係がないと判定し（Ｓ４４）、この後、この部品間データ依存関係判定処理を終了して部品移動処理（図１８）に戻る。
【０１６８】
（２−２−１−１−４）管理リソース間依存関係判定処理
図１９は、図１８について上述した部品間データ依存関係判定処理のステップＳ４１において、管理リソース間依存推定部６２（図１）により実行される管理リソース間依存関係判定処理の具体的な処理内容を示す。
【０１６９】
管理リソース間依存推定部６２は、部品間データ依存関係判定処理のステップＳ４１においてサービステンプレート再構成部６１により呼び出されると、この図１９に示す管理リソース間依存関係判定処理を開始し、まず、上述の対象サービステンプレート定義情報を参照して、選択部品が構成取得部品（Ｇ部品）であるか否かを判断する（Ｓ５０）。
【０１７０】
そして管理リソース間依存推定部６２は、この判断で否定結果を得ると、選択部品が対象とする管理リソースと、直前部品が対象とする管理リソースとの間に依存関係がないと判定し（Ｓ５８）、この判定結果をサービステンプレート再構成部６１に通知した後、この管理リソース間依存関係判定処理を終了する。
【０１７１】
これに対して、管理リソース間依存推定部６２は、ステップＳ５０の判断で肯定結果を得ると、かかる対象サービステンプレート定義情報を参照して、直前部品が構成変更部品（Ｅ部品）であるか否かを判断する（Ｓ５１）。
【０１７２】
そして管理リソース間依存推定部６２は、この判断で否定結果を得ると、選択部品が対象とする管理リソースと、直前部品が対象とする管理リソースとの間に依存関係はないと判定し（Ｓ５８）、この判定結果をサービステンプレート再構成部に通知した後、この管理リソース間依存関係判定処理を終了する。
【０１７３】
これに対して、管理リソース間依存推定部６２は、ステップＳ５１の判断で肯定結果を得ると、かかる対象サービステンプレート定義情報を参照して、選択部品（Ｇ部品）が対象とする管理リソースと、直前部品（Ｅ部品）が対象とする管理リソースとが同一であるか否かを判断する（Ｓ５２）。
【０１７４】
そして管理リソース間依存推定部６２は、この判断で肯定結果を得ると、選択部品が対象とする管理リソースと、直前部品が対象とする管理リソースとの間に依存関係があると判定し（Ｓ５９）、この判定結果をサービステンプレート再構成部６１に通知した後、この管理リソース間依存関係判定処理を終了する。
【０１７５】
これに対して、管理リソース間依存推定部６２は、ステップＳ５２の判断で否定結果を得ると、直前部品の関連管理リースを推定する関連管理リソース推定処理を実行する（Ｓ５３）。
【０１７６】
続いて、管理リソース間依存推定部６２は、選択部品が対象とする管理リソースが、ステップＳ５３で特定した管理リソースに含まれるか否か（ステップＳ５３で特定した幾つかの管理リソースの中に選択部品が対象とする管理リソースがあるか否か）を判断する（Ｓ５４）。
【０１７７】
そして管理リソース間依存推定部６２は、この判断で否定結果を得ると、選択部品が対象とする管理リソースと、直前部品が対象とする管理リソースとの間に依存関係はないと判断し（Ｓ５８）、この判断結果をサービステンプレート再構成部６１に通知した後、この管理リソース間依存関係判定処理を終了する。
【０１７８】
これに対して、管理リソース間依存推定部６２は、ステップＳ５４の判断で肯定結果を得ると、管理リソース間依存提示部６３（図１）を呼び出し、選択部品が対象とする管理リソースと、直前部品が対象とする管理リソースとの間の依存関係（より正確には選択部品と直前部品との並び替えの可否）をユーザに問い合わせる図２８に示すような依存関係問合せ画面９０を表示装置２４（図１）に表示するよう管理リソース間依存提示部６３に指示を与える（Ｓ５５）。
【０１７９】
この依存関係問合せ画面９０は、サービステンプレート構成表示フィールド９１、対象リソース詳細表示フィールド９２及び実績表示フィールド９３と、並替え実行ボタン９４及び並替え抑止ボタン９５とを備えて構成される。
【０１８０】
そしてサービステンプレート構成表示フィールド９１には、対象サービステンプレート８０を構成する各部品を表すアイコン９１Ｂがそれまでの処理で行った部品の並替えを反映した順番で並べられた対象サービステンプレート８０の処理の流れ（実行フロー）を模式的に表した模式図９１Ａが表示される。この模式図９１Ａでは、隣接するアイコン９１Ｂ間が処理の流れを表す矢印により接続される。またこの模式図９１Ａでは、選択部品に対応するアイコン９１Ｂと、直前部品に対応するアイコン９１Ｂとを所定色で着色したり、これらのアイコン９１Ｂの周囲を薄い所定色で取り囲むなどして強調表示される。
【０１８１】
また対象リソース詳細表示フィールド９２には、かかる選択部品及び直前部品について、その処理タイプや、処理対象の管理リソース、サービステンプレート構成表示フィールド９１に表示された模式図９１Ａにおける直前の構成取得部品の識別子、直前の構成取得部品が対象とする管理リソースのタイプなどの詳細情報が表示される。
【０１８２】
さらに実績表示フィールド９３には、その選択部品の対象の管理リソースと、直前部品の対象の管理リソースとの依存関係について、現在までにユーザに問い合わせた回数（上述のユーザ判定回数であり、図１３の「ユーザ判定回数」）と、その際にユーザが「依存あり」と回答した回数（上述の「依存あり」回答回数であり、図１３の「依存あり」）と、これらユーザ判定回数及び「依存あり」回答回数から算出された、かかる２つの管理リソースの依存関係があるという確度（図１３の「依存判定の実績」）とが表示される。
【０１８３】
かくして、ユーザは、この依存関係問合せ画面９０に表示された情報を参考にして、選択部品の対象とする管理リソースと、直前部品の対象とする管理リソースとの間に依存関係があるか否かを判断する。
【０１８４】
そしてユーザは、かかる２つの管理リソース間に依存関係がなく、これら選択部品及び直前部品の並び替えを行っても良いと判断した場合には並替え実行ボタン９４をクリックし、これら２つの管理リソース間に依存関係があり、これら選択部品及び直前部品の並び替えを抑止した方が良いと判断した場合には並替え抑止ボタン９５をクリックする。
【０１８５】
そしてかかる並替え実行ボタン９４又は並替え抑止ボタン９５がクリックされた場合、管理リソース間依存推定部６２は、これに応じて管理リソース間依存管理テーブル７２（図１３）を更新する（Ｓ５６）。
【０１８６】
例えば、選択部品が対象とする管理リソースと、直前部品が対象とする管理リソースとの間のデータ依存関係が管理リソース間依存管理テーブル７２に登録されていない場合には、管理リソース間依存推定部６２は、これら２つの管理リソース間のデータ依存関係を管理リソース間依存管理テーブル７２に新規登録する。
【０１８７】
より具体的には、管理リソース間依存推定部６２は、管理リソース間依存管理テーブル７２の未使用の１行を確保し、その後、そのデータ依存関係に対して付与した管理リソース依存ＩＤをその行の管理リソース依存ＩＤ欄７２Ｂに格納すると共に、直前部品が対象とする管理リソースのタイプを依存元管理リソース欄７２Ｃ、選択部品が対象とする管理リソースのタイプを依存先管理リソース欄７２Ｄにそれぞれ格納する。また管理リソース間依存推定部６２は、その行のユーザ判定回数欄７２Ｅに「１」を格納すると共に、ユーザがデータ依存関係があると回答した場合には「１」、データ依存関係がないと回答した場合には「０」を「依存あり」回答回数欄７２Ｆに格納する。さらに管理リソース間依存推定部６２は、これらユーザ確認回数及び「依存あり」回答回数から算出した確度を確度欄７２Ｇに格納する。
【０１８８】
また管理リソース間依存推定部６２は、選択部品が対象とする管理リソースと、直前部品が対象とする管理リソースとの間のデータ依存関係が管理リソース間依存管理テーブル７２に既に登録されている場合には、そのデータ依存関係に対応するレコードを更新する。
【０１８９】
より具体的には、管理リソース間依存推定部６２は、そのレコードのユーザ判定回数欄７２Ｅに格納されている数値を「１」増加させると共に、そのレコードの「依存あり」回答回数欄７２Ｆに格納されている数値を、データ依存関係があるとユーザが回答した場合（並替え実行ボタン９４がクリックされた場合）には「１」、データ依存関係がないとユーザが回答した場合（並替え抑止ボタン９５がクリックされた場合）には「０」だけ増加させる。また管理リソース間依存推定部６２は、このようにして更新したユーザ判定回数欄７２Ｅに格納されたユーザ確認回数と、「依存あり」回答回数欄７２Ｆに格納された「依存あり」回答回数とに基づいてそれら管理リソース間のデータ依存関係の確度を算出し、算出結果を確度欄７２Ｇに格納する。
【０１９０】
続いて、管理リソース間依存推定部６２は、依存関係問合せ画面９０を用いた問合せに対するユーザからの回答が、選択部品の対象とする管理リソースと、直前部品の対象とする管理リソースとの間の依存関係があるというものであったか否か（つまり依存関係問合せ画面９０の並替え実行ボタン９４がクリックされたか否か）を判断する（Ｓ５７）。
【０１９１】
そして管理リソース間依存推定部６２は、この判断で否定結果を得ると、選択部品の対象とする管理リソースと、直前部品の対象とする管理リソースとの間に依存関係がないとの判定し（Ｓ５８）、この判定結果をサービステンプレート再構成部６１に通知した後、この管理リソース間依存関係判定処理を終了する。
【０１９２】
これに対して、管理リソース間依存推定部６２は、ステップＳ５７で肯定結果を得ると、選択部品の対象とする管理リソースと、直前部品の対象とする管理リソースとの間に依存関係があると判定し（Ｓ５９）、この判定結果をサービステンプレート再構成部６１に通知した後、この管理リソース間依存関係判定処理を終了する。
【０１９３】
（２−２−１−１−５）関連管理リソース推定処理
図２０は、図１９について上述した管理リソース間依存関係判定処理のステップＳ５３において管理リソース間依存推定部６２により実行される関連管理リソース推定処理の具体的な処理内容を示す。
【０１９４】
管理リソース間依存推定部６２は、管理リソース間依存関係判定処理のステップＳ５３に進むとこの図２０に示す管理リソース間依存関係判定処理を開始し、まず、直前部品の入力プロパティのうち、未処理の入力プロパティを１つ選択する（Ｓ６０）。
【０１９５】
続いて、管理リソース間依存推定部６２は、ステップＳ６０で選択した入力プロパティ（以下、これを選択入力プロパティと呼ぶ）のデータ入力元が構成取得部品及び構成変更部品以外の部品（つまりユーザ確認部品又はその他の部品）であるか否かを判断する（Ｓ６１）。
【０１９６】
管理リソース間依存推定部６２は、この判断で肯定結果を得ると、選択入力プロパティのデータ入力元の部品についてこの図２０に示す関連管理リソース推定処理を実行することにより、当該データ入力元の部品の関連管理リソースを推定する（Ｓ６２）。
【０１９７】
そして管理リソース間依存推定部６２は、この後、ステップＳ６１で推定した各関連管理リソースを、直前部品のその選択入力プロパティに関する関連管理リソースとして推定（決定）した後（Ｓ６３）、ステップＳ７１に進む。
【０１９８】
これに対して、管理リソース間依存推定部６２は、ステップＳ６１の判断で否定結果を得ると、選択入力プロパティのデータ入力元が構成取得部品（Ｇ部品）であるか否かを判断する（Ｓ６４）。そして管理リソース間依存推定部６２は、この判断で肯定結果を得ると、その構成取得部品の対象となる管理ソースを直前部品の関連管理リソースとして推定（決定）し（Ｓ６５）、この後ステップＳ７１に進む。
【０１９９】
また管理リソース間依存推定部６２は、ステップＳ６４の判断で否定結果を得ると、選択入力プロパティのデータ入力元が構成変更部品（Ｅ部品）であるか否かを判断する（Ｓ６６）。そして管理リソース間依存推定部６２は、この判断で肯定結果を得ると、直前部品における選択入力プロパティに関する関連管理リソースはないと決定し（Ｓ６９）、この後、ステップＳ７１に進む。
【０２００】
一方、ステップＳ６６の判断で否定結果を得ることは、選択入力プロパティのデータの入力元がユーザである（つまりユーザが図５のプロパティＧＵＩ画面５０等を用いて選択入力プロパティを設定する）ことを意味する。かくして、このとき管理リソース間依存推定部６２は、選択入力プロパティの定義情報をプロパティＧＵＩ設定管理テーブル７１から取得する（Ｓ６７）。
【０２０１】
続いて、管理リソース間依存推定部６２は、取得した選択入力プロパティの内容に基づいて、例えば、サーバ管理計算機９（図１）、ストレージ管理計算機１０（図１）又はネットワーク管理計算機１１（図１）などの外部機器から管理リソースに関する情報を取得する処理を含むか否かを判断する（Ｓ６８）。
【０２０２】
そして管理リソース間依存推定部６２は、この判断で否定結果を得ると、直前部品における選択入力プロパティに関する関連管理リソースはないと決定し（Ｓ６９）、この後、ステップＳ７１に進む。また管理リソース間依存推定部６２は、ステップＳ６８の判断で肯定結果を得ると、ステップＳ６７で取得した選択入力プロパティの内容に基づいて、プロパティＧＵＩ設定管理テーブル７１において、選択入力プロパティに対する管理リソースが定義されている場合には、当該管理リソースを、直前部品における選択入力プロパティに関する関連管理リソースとして推定（決定）した後（Ｓ７０）、ステップＳ７１に進む。
【０２０３】
さらに管理リソース間依存推定部６２は、ステップＳ７１に進むと、直前部品のすべての入力プロパティについてステップＳ６１以降の処理を実行し終えたか否かを判断する（Ｓ７１）。そして管理リソース間依存推定部６２は、この判断で否定結果を得るとステップＳ６０に戻り、この後、ステップＳ６０で選択する入力プロパティを未処理の他の入力プロパティに順次切り替えながら、ステップＳ６１以降の処理を繰り返す。
【０２０４】
そして管理リソース間依存推定部６２は、やがて、直前部品のすべての入力プロパティについてステップＳ６１以降の処理を実行し終えることによりステップＳ７１で肯定結果を得ると、この関連管理リソース推定処理を終了して管理リソース間依存関係判定処理（図１９）に戻る。
【０２０５】
（２−２−１−２）ユーザ確認部品片寄せ処理
一方、図２１は、図１５について上述したサービステンプレート再構成処理のステップＳ１１においてサービステンプレート再構成部６１により実行されるユーザ確認部品片寄せ処理の具体的な処理内容を示す。サービステンプレート再構成部６１は、この図２１に示す処理手順に従って、図２６（Ｂ）のように部品の移動が行われた対象サービステンプレート８１内に散在するユーザ確認部品（Ｕ部品）をできる限り後方の構成変更部品の直前にまとめた状態に片寄せする。
【０２０６】
なお本実施の形態においては、ユーザ確認部品を「できる限り構成変更部品の直前にまとめた状態に片寄せ」するために、ユーザ確認部品が構成変更部品を跨がないことを条件に、各ユーザ確認部品をできる限り対象サービステンプレートの後方に片寄せ（図２６（Ａ）の右側に片寄せ）するものとする。
【０２０７】
実際上、サービステンプレート再構成部６１は、サービステンプレート再構成処理のステップＳ１１に進むと、この図２１に示すユーザ確認部品片寄せ処理を開始し、まず、図１６〜図２０について上述した構成変更部品片寄せ処理を施した後の対象サービステンプレート８１（図２６（Ｂ））のより後方の部品であって未処理の部品を１つ選択する（Ｓ８０）。
【０２０８】
続いて、サービステンプレート再構成部６１は、ステップＳ８０で選択した部品がユーザ確認部品であるか否かを判断する（Ｓ８１）。そしてサービステンプレート再構成部６１は、この判断で否定結果を得るとステップＳ８６に進む。
【０２０９】
これに対して、サービステンプレート再構成部６１は、ステップＳ８１の判断で肯定結果を得ると、ステップＳ８０で選択した部品の直後の部品（図２６（Ｂ）においてステップＳ８０で選択した部品の１つ右側の部品であり、以下、これを直後部品と呼ぶ）が存在するか否かを判断する（Ｓ８２）。そしてサービステンプレート再構成部６１は、この判断で否定結果を得るとステップＳ８６に進む。
【０２１０】
これに対してサービステンプレート再構成部６１は、ステップＳ８２の判断で肯定結果を得ると、その直後部品が構成変更部品（Ｅ部品）であるか否かを判断する（Ｓ８３）。そしてサービステンプレート再構成部６１は、この判断で肯定結果を得るとステップＳ８６に進む。
【０２１１】
これに対してサービステンプレート再構成部６１は、ステップＳ８３の判断で否定結果を得ると、直後部品がステップＳ８０で選択した部品（ここではユーザ確認部品）にデータ依存しているか否かを判断する（Ｓ８４）。具体的に、サービステンプレート再構成部６１は、上述の対象サービステンプレート定義情報を参照して、ステップＳ８０で選択した部品のいずれかの出力データを直後部品が入力としているか否かを判断する。そしてサービステンプレート再構成部６１は、この判断で肯定結果を得ると、ステップＳ８６に進む。
【０２１２】
これに対して、サービステンプレート再構成部６１は、ステップＳ８４の判断で否定結果を得ると、対象サービステンプレート８１におけるステップＳ８０で選択した部品（ユーザ確認部品）と、直後部品との順番を入れ替える（Ｓ８５）。そしてサービステンプレート再構成部６１は、ステップＳ８２に戻り、この後、ステップＳ８２で否定結果を得、又はステップＳ８３若しくはステップＳ８４で肯定結果を得るまでステップＳ８２〜ステップＳ８５の処理を繰り返す。
【０２１３】
この際、サービステンプレート再構成部６１は、対象サービステンプレート８１のステップＳ８０で選択した部品の後方において実行フローが分岐している場合には、そのうちのいずれか１つの分岐を選択してステップＳ８２〜ステップＳ８５の処理を繰り返す。なお、このようにしても図２４について後述する並列ユーザ確認部品集約処理により分岐間のユーザ確認部品を集約するため、分岐ごとに特定のパスを辿る仕組みになっていれば問題ない。
【０２１４】
この後、サービステンプレート再構成部６１は、ステップＳ８０で選択した部品についてステップＳ８２で否定結果を得、又は、ステップＳ８３若しくはステップＳ８４で肯定結果を得ると、対象サービステンプレート８１のすべての部品についてステップＳ８１以降の処理を実行し終えたか否かを判断する（Ｓ８６）。
【０２１５】
そしてサービステンプレート再構成部６１は、この判断で否定結果を得るとステップＳ８０に戻り、この後、ステップＳ８０で選択する部品を未処理の他の該当する部品に順次切り替えながら、ステップＳ８１で肯定結果を得るまでステップＳ８１以降の処理を繰り返す。
【０２１６】
そしてサービステンプレート再構成部６１は、やがて対象サービステンプレート８１のすべての部品についてステップＳ８１以降の処理を実行し終えることによりステップＳ８１で肯定結果を得ると、このユーザ確認部品片寄せ処理を終了して、サービステンプレート再構成処理（図１５）に戻る。
【０２１７】
（２−２−２）ユーザ確認部品集約処理
図２２は、図１４について上述した部品並替え処理のステップＳ２においてサービステンプレート再構成部６１により実行されるユーザ確認部品集約処理の具体的な処理内容を示す。サービステンプレート再構成部６１は、図１５〜図２１について上述したサービステンプレート再構成処理により図２６（Ｃ）のように部品の並べ替えが行われた対象サービステンプレート８２について、集約可能なユーザ確認部品（Ｕ部品）を図２２に示す処理手順に従ってできる限り集約する。
【０２１８】
実際上、サービステンプレート再構成部６１は、部品並替え処理のステップＳ２に進むと、この図２２に示すユーザ確認部品集約処理を開始し、まず、相互に隣接するすべてのユーザ確認部品を１つに集約する隣接ユーザ確認部品集約処理を実行する（Ｓ９０）。この隣接ユーザ確認部品集約処理により、例えば図２６（Ｃ）の対象サービステンプレートにおける「U1」、「U2」、「U4」、「U5」という各ユーザ確認部品が、図２９（Ａ）に示すように、「U-A」という１つのユーザ確認部品（以下、これを集約ユーザ確認部品と呼ぶ）に集約される。
【０２１９】
続いて、サービステンプレート再構成部６１は、図２９（Ａ）の分岐した各処理（並列的に実行される各処理）にそれぞれに含まれるユーザ確認部品をまとめる並列ユーザ確認部品集約処理を実行する（Ｓ９１）。この並列ユーザ確認部品集約処理により、図２９（Ａ）の対象サービステンプレート８３における「E1」での分岐後の各処理にそれぞれ含まれる「U3」というユーザ確認部品と、「U6」というユーザ確認部品とが、図２９（Ｂ）に示すように、「U-B」という１つの集約ユーザ確認部品に集約される。
【０２２０】
次いで、サービステンプレート再構成部６１は、ステップＳ９０及びステップＳ９１でユーザ確認部品を集約することにより得られた各集約ユーザ確認部品を図２９（Ｃ）のように管理ドメインごとのユーザ確認部品に分解する（Ｓ９２）。
【０２２１】
なお「管理ドメイン」とは、大量で多様なリソースを統合的に管理する環境（大規模データセンタ運用環境など）において、それらのリソースを管理するカテゴリ分けのタイプを指す。例えば、「管理リソースのタイプ」であれば、「ストレージ装置」、「サーバ装置」、「ネットワーク」及び「仮想マシン（ＶＭ：Virtual Machine）」などが「管理ドメイン」の種別として挙げられる。また「サイト」であれば、地理的な場所が「管理ドメイン」の種別として挙げられる。
【０２２２】
またステップＳ９０及びステップＳ９１で集約したユーザ確認部品をステップＳ９２で管理ドメインごとに分解するのは、各管理ドメインごとに管理者がそれぞれ設定されることが予想されるため、各管理ドメインの管理者が並行して自己が管理する管理ドメインについて確認を行えるようにするためである。
【０２２３】
例えば、図２９（Ｂ）及び図２９（Ｃ）の例では、「U-A」という集約ユーザ確認部品が、「U-A1」という部品（集約ユーザ確認部品）と、「U-A2」という部品（ユーザ確認部品）とに分割され、「U-B」という集約ユーザ確認部品が、「U-B1」という部品（ユーザ確認部品）と、「U-B2」という部品（ユーザ確認部品）とに分解される。そして、サービステンプレート再構成部６１は、この後、このユーザ確認部品集約処理を終了する。
【０２２４】
（２−２−２−１）隣接ユーザ確認部品集約処理
図２３は、図２２について上述したユーザ確認部品集約処理のステップＳ９０においてサービステンプレート再構成部６１により実行される隣接ユーザ確認部品集約処理の具体的な処理内容を示す。
【０２２５】
サービステンプレート再構成部６１は、ユーザ確認部品集約処理のステップＳ９０に進むと、この図２３に示す隣接ユーザ確認部品集約処理を開始し、まず、図１５〜図２１について上述したサービステンプレート再構成処理により部品の並び替えが行われた例えば図２６（Ｃ）の対象サービステンプレート８２について、その対象サービステンプレート８２上で２つ以上のユーザ確認部品が隣接している箇所をすべて特定する（Ｓ１００）。
【０２２６】
この処理は、例えば、図２６（Ｃ）の対象サービステンプレート８２をその先頭から順番に部品を辿りながら、対象サービステンプレート定義情報を参照して個々の部品の処理タイプを順次確認し、対象サービステンプレート８２における処理タイプが「ユーザ確認」である部品が連続して現れる箇所（以下、これを隣接ユーザ確認部品集合箇所と呼ぶ）をそれぞれ特定することにより行うことができる。
【０２２７】
続いて、サービステンプレート再構成部６１は、ステップＳ１００で特定した隣接ユーザ確認部品集合箇所の中から１つの隣接ユーザ確認部品集合箇所を選択し（Ｓ１０１）、選択した隣接ユーザ確認部品集合箇所に位置するすべてのユーザ確認部品を集約した新たなユーザ確認部品（以下、これを集約ユーザ確認部品と呼ぶ）を作成する（Ｓ１０２）。
【０２２８】
次いで、サービステンプレート再構成部６１は、ステップＳ１０１で選択した隣接ユーザ確認部品集合箇所に位置するすべてのユーザ確認部品を対象サービステンプレート８２から取り除き、これらをステップＳ１０２で作成した集約ユーザ確認部品に置き換える（Ｓ１０３）。
【０２２９】
この後、サービステンプレート再構成部６１は、ステップＳ１００で特定したすべての隣接ユーザ確認部品集合箇所に対してステップＳ１０１〜ステップＳ１０２の処理を実行し終えたか否かを判断する（Ｓ１０４）。
【０２３０】
そしてサービステンプレート再構成部６１は、この判断で否定結果を得るとステップＳ１０１に戻り、この後、ステップＳ１０１で選択する隣接ユーザ確認部品集合箇所を未処理の他の隣接ユーザ確認部品集合箇所に順次切り替えながら、ステップＳ１０１〜ステップＳ１０４の処理を繰り返す。
【０２３１】
そしてサービステンプレート再構成部６１は、やがてステップＳ１００で特定したすべての隣接ユーザ確認部品集合箇所についてステップＳ１０１〜ステップＳ１０３の処理を実行し終えることによりステップＳ１０４で肯定結果を得ると、この隣接ユーザ確認部品集約処理を終了してユーザ確認部品集約処理（図２２）に戻る。
【０２３２】
（２−２−２−２）並列ユーザ確認部品集約処理
一方、図２４は、図２２について上述したユーザ確認部品集約処理のステップＳ９１においてサービステンプレート再構成部６１により実行される並列ユーザ確認部品集約処理の具体的な処理内容を示す。
【０２３３】
サービステンプレート再構成部６１は、ユーザ確認部品集約処理のステップＳ９１に進むと、この図２４に示す並列ユーザ確認部品集約処理を開始し、まず、図２３について上述した隣接ユーザ確認部品集約処理により図２９（Ａ）のようにユーザ確認部品が集約された対象サービステンプレート８４について、上述の対象サービステンプレート定義情報を参照して、ユーザ確認部品のみに関するフロー（以下、これをユーザ確認部品フローと呼ぶ）を抽出する（Ｓ１１０）。
【０２３４】
続いて、サービステンプレート再構成部６１は、ステップＳ１１０で抽出した各ユーザ確認部品フローについて、かかる対象サービステンプレート定義情報を参照して、対象サービステンプレート８４の先頭からそのユーザ確認部品フローに含まれるユーザ確認部品に到達するまので分岐の回数をそれぞれカウントし、かかる分岐の回数をそのユーザ確認部品フローの「深さ」として、図２９（Ａ）の対象サービステンプレート８４内に存在するユーザ確認部品フロー（集約ユーザ確認部品を含まず）を同じ「深さ」のユーザ確認部品フローごとに分類する（Ｓ１１１）。
【０２３５】
次いで、サービステンプレート再構成部６１は、ステップＳ１１１で分類した「深さ」の中から未処理の１つの「深さ」を選択し（Ｓ１１２）、選択した「深さ」に分類された各ユーザ確認部品フローにそれぞれ対応する各ユーザ確認部品を集約した集約ユーザ確認部品を作成する（Ｓ１１３）。
【０２３６】
次いで、サービステンプレート再構成部６１は、ステップＳ１１２で選択した「深さ」に分類されたユーザ確認部品フローにそれぞれ対応するユーザ確認部品を対象サービステンプレート８４からすべて取り除き、これらをステップＳ１１３で作成した集約ユーザ確認部品に置き換える（Ｓ１１４）。
【０２３７】
この後、サービステンプレート再構成部６１は、ステップＳ１１１の分類で得られたすべての「深さ」についてステップＳ１１３及びステップＳ１１４の処理を実行し終えたか否かを判断する（Ｓ１１５）。
【０２３８】
そしてサービステンプレート再構成部６１は、この判断で否定結果を得るとステップＳ１１２に戻り、この後、ステップＳ１１２で選択する「深さ」を未処理の他の「深さ」に順次切り替えながら、ステップＳ１１２〜ステップＳ１１５の処理を繰り返す。
【０２３９】
そしてサービステンプレート再構成部６１は、やがてステップＳ１１１の分類により得られたすべての「深さ」についてステップＳ１１３及びステップＳ１１４の処理を実行し終えることによりステップＳ１１５で肯定結果を得ると、この並列ユーザ確認部品集約処理を終了してユーザ確認部品集約処理（図２２）に戻る。
【０２４０】
（２−２−２−３）集約ユーザ確認部品分割処理
図２５は、図２２について上述したユーザ確認部品集約処理のステップＳ９２においてサービステンプレート再構成部６１により実行される集約ユーザ確認部品分割処理の具体的な処理内容を示す。
【０２４１】
サービステンプレート再構成部６１は、ユーザ確認部品集約処理のステップＳ９２に進むと、この図２５に示す集約ユーザ確認部品分割処理を開始し、まず、上述の対象サービステンプレート定義情報を参照して、ユーザが作成した部品を並べ替える前の対象サービステンプレート８０（図２６（Ａ））を構成する各部品の中から未処理のユーザ確認部品を１つ選択する（Ｓ１２０）。
【０２４２】
続いて、サービステンプレート再構成部６１は、ステップＳ１２０で選択したユーザ管理部品（以下、これを選択ユーザ確認部品と呼ぶ）の管理ドメインを決定する（Ｓ１２１）。具体的に、例えば管理ドメインとして管理リソースタイプを用いる場合、サービステンプレート再構成部６１は、選択ユーザ確認部品がデータ依存する直近の構成変更部品が対象とするリソースタイプを対象サービステンプレート定義情報から取得し、取得したリソースタイプに対応する管理ドメインを選択ユーザ確認部品の管理ドメインとして決定する。
【０２４３】
次いで、サービステンプレート再構成部６１は、部品を並べ替える前の対象サービステンプレート８０を構成するすべてのユーザ確認部品について管理ドメインを決定し終えたか否かを判断する（Ｓ１２２）。
【０２４４】
サービステンプレート再構成部６１は、この判断で否定結果を得るとステップＳ１２０に戻り、この後、ステップＳ１２０で選択するユーザ確認部品を未処理の他のユーザ確認部品に順次切り替えながら、ステップＳ１２０〜ステップＳ１２２の処理を繰り返す。
【０２４５】
そしてサービステンプレート再構成部６１は、やがて部品を並べ替える前の対象サービステンプレート８０を構成するすべてのユーザ確認部品について管理ドメインを決定し終えることによりステップＳ１２２で肯定結果を得ると、図２４について上述した並列ユーザ確認部品集約処理の処理結果として得られた対象サービステンプレート８５（図２９（Ｂ））を構成する部品の中から未処理の部品を１つ選択する（Ｓ１２３）。
【０２４６】
続いて、サービステンプレート再構成部６１は、ステップＳ１２３で選択した部品が集約ユーザ確認部品（「U-A」、「U-B」）であるか否かを判断する（Ｓ１２４）。そしてサービステンプレート再構成部６１は、この判断で否定結果を得るとステップＳ１２３に戻り、この後、ステップＳ１２３及びステップＳ１２４の処理を繰り返す。
【０２４７】
そしてサービステンプレート再構成部６１は、やがてステップＳ１２３で集約ユーザ確認部品を選択することによりステップＳ１２４の判断で肯定結果を得ると、対象サービステンプレート定義情報に基づいてその集約ユーザ確認部品を構成するすべてのユーザ確認部品を特定し、特定したこれらユーザ確認部品のステップＳ１２１でそれぞれ決定した管理ドメインに基づいて、これらユーザ確認部品を管理ドメインごとに分類する（Ｓ１２５）。
【０２４８】
続いて、サービステンプレート再構成部６１は、ステップＳ１２５で分類した管理ドメインのうちの１つの管理ドメインを選択する（Ｓ１２６）。そしてサービステンプレート再構成部は、対象サービステンプレート定義情報を参照して、ステップＳ１２６で選択した集約ユーザ確認部品を構成する各ユーザ確認部品のうち、ステップＳ１２１において決定された管理ドメインが、ステップＳ１２６で選択した管理ドメインであるすべてのユーザ確認部品を抽出し、これらを集約した新たな集約ユーザ確認部品を生成する（Ｓ１２７）。
【０２４９】
次いで、サービステンプレート再構成部６１は、ステップＳ１２５で分類されたすべての管理ドメインについてステップＳ１２７の処理を実行し終えたか否かを判断する（Ｓ１２８）。そしてサービステンプレート再構成部６１は、この判断で否定結果を得るとステップＳ１２６に戻り、この後ステップＳ１２６〜ステップＳ１２８の処理を繰り返す。
【０２５０】
そしてサービステンプレート再構成部６１は、ステップＳ１２５で分類したすべての管理ドメインについてステップＳ１２７の処理を実行し終えることによりステップＳ１２８で肯定結果を得ると、ステップＳ１２３で選択した部品（ここでは集約ユーザ確認部品）を、ステップＳ１２７で生成した管理ドメインごとの集約ユーザ確認部品に置き換える（Ｓ１２９）。
【０２５１】
続いて、サービステンプレート再構成部６１は、対象サービステンプレート８５（図２９（Ｂ））を構成するすべての部品について、ステップＳ１２４以降の処理を実行し終えたか否かを判断する（Ｓ１３０）。そしてサービステンプレート再構成部６１は、この判断で否定結果を得ると、ステップＳ１２３に戻り、この後、ステップＳ１２３で選択する部品を未処理の他の部品に順次切り替えながら、ステップＳ１２３〜ステップＳ１３０の処理を繰り返す。
【０２５２】
そしてサービステンプレート再構成部６１は、やがて対象サービステンプレート８５（図２９（Ｂ））を構成するすべての部品について、ステップＳ１２４以降の処理を実行し終えることによりステップＳ１３０で構成結果を得ると、この集約ユーザ確認部品分割処理を終了する。
【０２５３】
以上により、図２９（Ｂ）の対象サービステンプレートが図２９（Ｃ）のような対象サービステンプレート８６に変換される。
【０２５４】
なお、例えばステップＳ１２９において、ステップＳ１２３で選択した部品（集約ユーザ確認部品）を管理ドメインごとの集約ユーザ管理部品に置き換える前に、例えば図３０や図３１に示すような、置換え後の対象サービステンプレートの部品の並びを表す模式図１０１，１１１を表示した確認画面１００，１１０を表示し、ユーザの確認を取った上でステップＳ１２３で選択した部品（集約ユーザ確認部品）を管理ドメインごとの集約ユーザ管理部品に置き換えるようにしてもよい。
【０２５５】
ここで、図３０は、隣接するユーザ確認部品をまとめた集合ユーザ確認部品（図２９（Ｂ）の「U-A」）を分解する場合における確認画面１００の構成例であり、ＯＫボタン１０２及びキャンセルボタン１０３を備える。そしてこの確認画面１００において、確認ボタン１０２がクリックされた場合にはステップＳ１２３における置き換えを実行し、キャンセルボタン１０３がクリックされた場合には、ステップＳ１２３における置き換えを中止するようにすればよい。
【０２５６】
また図３１は、並列するユーザ確認部品をまとめた集合ユーザ確認部品（図２９（Ｂ）の「U-B」）を分解する場合における確認画面１１０の構成例であり、ＯＫボタン１１２及びキャンセルボタン１１３を備える。そしてこの確認画面１１０において、確認ボタン１１２がクリックされた場合にはステップＳ１２３における置き換えを実行し、キャンセルボタン１１３がクリックされた場合には、ステップＳ１２３における置き換えを中止するようにすればよい。
【０２５７】
（３）本実施の形態の効果
以上のように本実施の形態の計算機システム１では、管理サーバ計算機４が、対象サービステンプレート８０に含まれる各ユーザ確認部品を当該対象サービステンプレート８０の前方に片寄せし、対象サービステンプレート８０に含まれる構成変更部品を対象サービステンプレート８０の後方に片寄せするよう、対象サービステンプレート８０の部品の並び替えを行う。
【０２５８】
この際、管理サーバ計算機４は、構成変更部品及び当該構成変更部品の直後の構成取得部品の並び替えについては、対象サービステンプレートの定義情報に基づいて、当該構成取得部品の対象となる管理リソースが、当該構成変更部品が対象とする管理リソースと同一でなく、かつ、当該構成変更部品によって影響を受け得る管理リソースでない場合に限り実施する。
【０２５９】
従って、本管理サーバ計算機４によれば、対象サービステンプレート８０の部品の並替えに起因する不測のエラーが対象サービステンプレート８０の実行時に発生することを未然に防止しながら、対象サービステンプレート８０の実行時に構成変更のロールバックが発生したり、ユーザが頻繁に確認作業を行うことを有効に回避できる。かくするにつき、本管理サーバ計算機４によれば、サービステンプレートの作成やその実行を容易化でき、かくして計算機システム１の運用／保守業務をより一層と効率化させることができる。
【０２６０】
（４）他の実施の形態
なお上述の実施の形態においては、本発明を図１のように構成された計算機システム１に適用するようにした場合について述べたが、本発明はこれに限らず、この他種々の構成の計算機システムに広く適用することができる。
【０２６１】
また上述の実施の形態においては、構成変更部品及び構成取得部品の並び替えの可否をユーザに問い合わせる際に、当該構成変更部品及び当該構成取得部品の並び替えの可否の問合せに対する現在までのユーザの判定実績を図２８について上述した依存関係問合せ画面９０の実績表示フィールド９３に表示するようにした場合について述べたが、本発明はこれに限らず、かかる判定実績を音声等によりユーザに提示するようにしてもよい。
【産業上の利用可能性】
【０２６２】
本発明は、種々の構成の計算機システムに広く適用することができる。
【符号の説明】
【０２６３】
１……計算機システム、２……ＩＴシステム、３……管理計算機群、４……管理サーバ計算機、６……サーバ装置、７……ストレージ装置、８……ネットワーク装置、９……サーバ管理計算機、１０……ストレージ管理計算機、１１……ネットワーク管理計算機、２０……ＣＰＵ、２４……表示装置、２６……運用自動化ソフトウェア、３０，３１，３２，４７，８０〜８６……サービステンプレート、４０……サービステンプレート作成画面、４４，４５，４８……アイコン、５０……プロパティＧＵＩ画面、６０……サービステンプレート作成部、６１……サービステンプレート再構成部、６２……管理リソース間依存推定部、６３……管理リソース間依存提示部、６４……サービステンプレート実行部、６５……サービステンプレート管理テーブル、６６……部品管理テーブル、６７……プロパティ管理テーブル、６８……ステップ管理テーブル、６９……実行フロー管理テーブル、７０……データフロー管理テーブル、７１……プロパティＧＵＩ設定管理テーブル、７２……管理リソース間依存管理テーブル、９０……依存関係問合せ画面、１００，１１０……確認画面。
【図１】
0006694552.tif 000002
【図２】
0006694552.tif 000003
【図３】
0006694552.tif 000004
【図４】
0006694552.tif 000005
【図５】
0006694552.tif 000006
【図６】
0006694552.tif 000007
【図７】
0006694552.tif 000008
【図８】
0006694552.tif 000009
【図９】
0006694552.tif 000010
【図１０】
0006694552.tif 000011
【図１１】
0006694552.tif 000012
【図１２】
0006694552.tif 000013
【図１３】
0006694552.tif 000014
【図１４】
0006694552.tif 000015
【図１５】
0006694552.tif 000016
【図１６】
0006694552.tif 000017
【図１７】
0006694552.tif 000018
【図１８】
0006694552.tif 000019
【図１９】
0006694552.tif 000020
【図２０】
0006694552.tif 000021
【図２１】
0006694552.tif 000022
【図２２】
0006694552.tif 000023
【図２３】
0006694552.tif 000024
【図２４】
0006694552.tif 000025
【図２５】
0006694552.tif 000026
【図２６】
0006694552.tif 000027
【図２７】
0006694552.tif 000028
【図２８】
0006694552.tif 000029
【図２９】
0006694552.tif 000030
【図３０】
0006694552.tif 000031
【図３１】
0006694552.tif 000032