説明

複数のサービス構成要素に対応するアクションの実行を管理するためのコンピュータ・システム、並びにその方法及びコンピュータ・プログラム

【課題】サービス・プロセス間の依存関係を把握し、サービス・プロセスの効率的且つ安全な実行をする。
【解決手段】コンピュータ・システムは、構成要素についての情報を検出するディスカバリ部と、該構成要素の所定の属性及び該構成要素と他の構成要素との関係を示す1組のデータを保持するリポジトリと、前記サービス構成要素を対応するアクションの対象である1の構成要素に関連付ける関連付部と、第1のサービス構成要素に対応するアクションの実行中に第2のサービス構成要素に対応するアクションへのリクエストがあり且つ該第2のサービス構成要素に対応するアクションの対象である少なくとも1の構成要素が該第1のサービス構成要素に対応するアクションの対象である構成要素に含まれる場合、該第2のサービス構成要素に対応するアクションを実行することが許されるかどうかを判定する判定部とを含む。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、サービス構成要素に対応するアクションの実行を管理するためのコンピュータ・システム、並びにその方法及びコンピュータ・プログラムに関する。
【背景技術】
【0002】
ITIL(Information Technology Infrastructure Library)(英国政府の商標)とは、ITサービスマネジメントを実現するためのベストプラクティス(最も良い事例)を集めたものである。ITILの中心は、サービスサポート及びサービスデリバリーである。サービスサポートの1つとして構成管理がある。構成管理とは、ITサービスマネジメントの管理対象である構成要素(configuration item、構成アイテムともいう、以下CIと略す場合がある)を認識し、構成要素についての情報を維持及び更新し、確認し、並びに監査を行うプロセスである。構成要素は、構成管理の対象となる資源(リソース)である。構成要素は、ハードウェア及びソフトウェアを含むシステム資源だけでなく、ITサービスの提供に必要な設備、ITサービスの運営に関する規程書、作業手順書及び構成図などのドキュメント類、ハードウェア又はソフトウェアの保守作業などのサービス、プロセス、並びに人的資源なども含む。ITILのフレームワークでは、構成要素を管理するために、構成管理データベース(Configuration Management Database、以下CMDBと略す場合がある)というデータベースを用いて一元的に管理することが推奨されている。CMDBは、構成要素の少なくとも1つの所定の属性及び他の構成要素との関係を記録するデータベースである。CMDBを実装することで備わる最も重要な能力は、構成要素についての情報を自動的に発見する能力(ディスカバリ、自動検出ともいう)及び自動的に更新する能力(トラッキングともいう)である。CMDBでは、構成要素についての情報をCMDBに正確に反映させることが重要である。
【0003】
インターナショナル・ビジネス・マシーンズ・コーポレーション(商標、以下IBM)は、CMDBの構築を支援し且つCMDBを基盤に運用プロセスを制御するソフトとして、「Tivoli Change and Configuration Management Database」(以下、Tivoli CCMDB)を提供している。Tivoli CCMDBにおけるディスカバリ及びトラッキングの詳細は、IBM Redbooks Deployment Guide Series: IBM Tivoli Change and Configuration Management Database Configuration Discovery and Tracking v1.1、第41〜64頁、2006年11月(下記非特許文献1)を参照されたい。Tivoli CCMDBでは、運用管理ソフトが、ディスカバリ及びトラッキングを実行するように実装されている。
【0004】
Tivoli CCMDBでは、分散ネットワーク環境上の構成要素であるサーバ、クライアント、オペレーティング・システム(OS)、ミドルウェア(Web/AP/DBMS/LDAPなど)、パッケージ・ソフト、管理ツール、ネットワーク機器及びストレージ機器など300種類を識別し、さらに各構成要素についての情報、例えばコンピュータの構成についての情報、各コンピュータ上で動作するアプリケーションについての情報、各コンピュータに接続されているネットワーク接続ストレージ(NAS)などの構成情報、ネットワークに直接接続されているストレージエリアネットワーク(SAN)などの構成情報を自動的に発見し及び更新することができる。各構成要素についての情報の収集方法は管理対象によっても異なるが、基本的にはCMDBを管理するコンピュータ・システムがSSH(Secure SHell)などを用いて管理用のリモート・インタフェースに定期的にアクセスし、OS上の設定ファイル又は構成情報を読み取ったり、或いはCMDBを管理するコンピュータ・システムが設定確認コマンドを実行したりする。そのため、管理対象である構成要素にエージェント・プログラムを導入する必要はない。上記の様式にて発見され且つ更新された情報は、IBMが提唱する構成管理データベース用のデータ・モデル「Common Data Model」(以下、CDM)に基づいて、2006年の時点において、31種類のセクション(Computer System、Database、Application、Processなどのカテゴリ)、636種類のクラス(データ・モデルの基本単位、1つ又は複数のセクションに属する)、2609種類の属性(データの属性情報、1つのクラスに属する)、7種類のインタフェース(使用頻度の高い属性のグループ、複数のセクションに属する)、57種類の関係(リレーションシップ)、及び49種類のデータタイプ(データの種別)に整理される。CDMの詳細は、IBM REDPAPER (DRAFT version) IBM Tivoli Common Data Model: Guide to Best Practices(IBM Form Number REDP-4389-00)、第2〜7頁、2007年11月(下記非特許文献2)を参照されたい。各構成要素及び該構成要素と他の構成要素との関係についての情報は、GUIの表示ツール、例えばTADDMコンソールに渡される。そして、各構成要素及び該構成要素と他の構成要素との関係が、個々のブロック及び該ブロック間のリンクを用いて視覚的に表示装置上に表示される。
【0005】
【非特許文献1】IBM Redbooks Deployment Guide Series: IBM Tivoli Change and Configuration Management Database Configuration Discovery andTracking v1.1、第41〜64頁、2006年11月
【非特許文献2】IBM RED PAPER (DRAFT version) IBM Tivoli Common Data Model: Guide to Best Practices(IBM Form Number REDP-4389-00)、第2〜7頁、2007年11月
【発明の開示】
【発明が解決しようとする課題】
【0006】
近年、例えばITサービス管理及びビジネスサービス管理のようなサービス管理が注目を集めている。特に、ITIL準拠のサービス管理が注目を集めている。サービス管理では、サービスレベルを満足させるために、サービス・プロセスを効率的に且つ停滞することなく実行する必要がある。ITIL準拠のサービス管理では、サービス・プロセスは、CMDB上のCI情報を参照するオペレーションをプロセス化した複数のタスクから構成される。よって、ITIL準拠のサービス管理では、サービスレベルを満足させるために、CI情報が十分な頻度で更新される必要がある。
しかし、現状では、アクティブ型のディスカバリ装置が、定期的なポーリングによって構成要素についての情報(以下、CIの情報という)を取得し、次に属性及び関係更新部が、該取得したCIの情報に基づいて、CIインスタンスの属性値又は関係値を更新する。そのために、CIインスタンスの更新が行われるまで、それを参照するサービス・プロセスが停滞することになる。また、他のサービス・プロセスが実行されているかどうかはユーザによる判断で行うため、サービス・プロセスが競合し失敗する可能性もある。
従来は、このようにサービス・プロセス間の依存関係を把握することができず、サービス・プロセスの効率的且つ安全な実行をすることができなかった。
【課題を解決するための手段】
【0007】
本発明は、サービス構成要素に対応するアクションの実行を管理するためのコンピュータ・システムを提供する。該コンピュータ・システムは、
構成要素それぞれについての情報を検出するディスカバリ部と、
構成要素毎に、該構成要素の少なくとも1つの所定の属性及び該構成要素と他の構成要素との関係を示す1組のデータを保持するリポジトリと、
上記サービス構成要素を、該サービス構成要素に対応するアクションの対象である少なくとも1の構成要素に関連付ける関連付部と、
第1のサービス構成要素に対応するアクションの実行中に第2のサービス構成要素に対応するアクションへのリクエストがあり且つ該第2のサービス構成要素に対応するアクションの対象である少なくとも1の構成要素が該第1のサービス構成要素に対応するアクションの対象である構成要素に含まれる場合、該第2のサービス構成要素に対応するアクションを実行することが許されるかどうかを判定する判定部と
を含む。
【0008】
本発明の1つの実施形態では、上記サービス構成要素が、1又は複数のサービス・プロセス又は該サービス・プロセスに含まれる1又は複数のサービス・ステップである。
【0009】
本発明の1つの実施形態では、上記判定部が、上記サービス構成要素に対応するアクションを実行することが許されるかどうかを判定するためのルールを定義するポリシーによって上記アクションを実行することが許されるかどうかを判定する。
【0010】
本発明の1つの実施形態では、上記アクションを実行することが許されるかどうかを判定することをユーザに選択することを可能にするインタフェースを表示部に提示する提示部をさらに含む。
【0011】
本発明の1つの実施形態では、上記判定部が、上記アクションを実行することが許される場合、上記第2のサービス構成要素に対応するアクションを実行させ、上記判定部が、上記アクションを実行することが許されない場合、上記第2のサービス構成要素に対応するアクションの実行を待機させる。
【0012】
本発明の1つの実施形態では、上記第1のサービス構成要素に対応するアクションの対象である構成要素が上記第2のサービス構成要素に対応するアクションの対象である構成要素と重複しない場合、上記第2のサービス構成要素に対応するアクションを実行することを許す。
【0013】
本発明の1つの実施形態では、上記ディスカバリ部が、上記第1又は第2のサービス構成要素に対応するアクションの終了後に、構成要素についての情報を検出する。
【0014】
本発明の1つの実施形態では、上記ディスカバリ部が、上記第1又は第2のサービス構成要素に対応するアクションの終了後に、該終了したサービス構成要素に対応するアクションの対象である構成要素についての情報を検出する。
【0015】
本発明の1つの実施形態では、上記ディスカバリ部が、上記第1又は第2のサービス構成要素に対応するアクションの終了後に、上記第1のサービス構成要素に対応するアクションの対象である少なくとも1の構成要素と上記第2のサービス構成要素に対応するアクションの対象である構成要素との重複範囲に含まれる構成要素についての情報を検出する。
【0016】
本発明の1つの実施形態では、上記関連付けが、上記第1のサービス構成要素に対応するアクションの開始に応じて行われる。
【0017】
本発明の1つの実施形態では、上記関連付部が、上記第1のサービス構成要素に対応するアクションの終了に応じて、上記関連付けを解除する。
【0018】
本発明の1つの実施形態では、上記第2のサービス構成要素に対応するアクションの実行が待機している場合、上記判定部が、上記第1のサービス構成要素に対応するアクションの終了に応じて、上記第2のサービス構成要素に対応するアクションを実行することが許されるかどうかをさらに判定する。
【0019】
本発明の1つの実施形態では、所定の属性及び構成要素と他の構成要素との関係を定義するデータ・モデルが、サービス構成要素のアクション・タイプと該サービス構成要素に対応するアクションの対象である構成要素の範囲とを含む。
【0020】
本発明はまた、サービス構成要素に対応するアクションの実行を管理する方法を提供する。該方法は、コンピュータ・システムに下記ステップを実行させるステップを含む。該コンピュータ・システムは、構成要素それぞれについての情報を検出するディスカバリ部と、構成要素毎に、該構成要素の少なくとも1つの所定の属性及び該構成要素と他の構成要素との関係を示す1組のデータを保持するリポジトリとを含む。上記方法は、
上記検出された情報に基づいて、構成要素毎に、該構成要素の少なくとも1つの所定の属性及び該構成要素と他の構成要素との関係を示す1組のデータを作成し、該1組のデータをリポジトリに格納するステップと、
上記サービス構成要素を、該サービス構成要素に対応するアクションの対象である少なくとも1の構成要素に関連付けるステップと、
第1のサービス構成要素に対応するアクションの実行中に第2のサービス構成要素に対応するアクションへのリクエストがあり且つ該第2のサービス構成要素に対応するアクションの対象である少なくとも1の構成要素が該第1のサービス構成要素に対応するアクションの対象である構成要素に含まれる場合、該第2のサービス構成要素に対応するアクションを実行することが許されるかどうかを判定するステップと
を含む。
【0021】
本発明の1つの実施形態では、上記サービス構成要素が、1又は複数のサービス・プロセス又は該サービス・プロセスに含まれる1又は複数のサービス・ステップである。
【0022】
本発明の1つの実施形態では、上記判定するステップが、上記サービス構成要素に対応するアクションを実行することが許されるかどうかを判定するためのルールを定義するポリシーによって上記アクションを実行することが許されるかどうかを判定するステップを含む。
【0023】
本発明の1つの実施形態では、上記判定するステップが、上記アクションを実行することが許されるかどうかを判定することをユーザに選択することを可能にするインタフェースを表示部に提示するステップを含む。
【0024】
本発明の1つの実施形態では、上記コンピュータ・システムに下記ステップを実行させるステップをさらに含む。該ステップは、
上記アクションを実行することが許される場合、上記第2のサービス構成要素に対応するアクションを実行すること許すステップと、
上記アクションを実行することが許されない場合、上記第2のサービス構成要素に対応するアクションの実行を待機させるステップと
を含む。
【0025】
本発明の1つの実施形態では、上記コンピュータ・システムに下記ステップを実行させるステップをさらに含む。該ステップは、上記第1のサービス構成要素に対応するアクションの対象である構成要素が上記第2のサービス構成要素に対応するアクションの対象である構成要素と重複しない場合、上記第2のサービス構成要素に対応するアクションを実行することを許すステップをさらに含む。
【0026】
本発明の1つの実施形態では、上記コンピュータ・システムに下記ステップを実行させるステップをさらに含む。該ステップは、上記第1又は第2のサービス構成要素に対応するアクションの終了後に、構成要素についての情報を検出するステップを含む。
【0027】
本発明の1つの実施形態では、上記コンピュータ・システムに下記ステップを実行させるステップをさらに含む。該ステップは、上記第1又は第2のサービス構成要素に対応するアクションの終了後に、該終了したサービス構成要素に対応するアクションの対象である構成要素についての情報を検出するステップを含む。
【0028】
本発明の1つの実施形態では、上記コンピュータ・システムに下記ステップを実行させるステップをさらに含む。該ステップは、上記第1又は第2のサービス構成要素に対応するアクションの終了後に、上記第1のサービス構成要素に対応するアクションの対象である少なくとも1の構成要素と上記第2のサービス構成要素に対応するアクションの対象である構成要素との重複範囲に含まれる構成要素についての情報を検出するステップを含む。
【0029】
本発明の1つの実施形態では、上記関連付けるステップが、上記第1のサービス構成要素に対応するアクションの開始に応じて行われる。
【0030】
本発明の1つの実施形態では、上記コンピュータ・システムに下記ステップを実行させるステップをさらに含む。該ステップは、上記第1のサービス構成要素に対応するアクションの終了に応じて、上記関連付けを解除するステップを含む。
【0031】
本発明の1つの実施形態では、上記コンピュータ・システムに下記ステップを実行させるステップをさらに含む。該ステップは、上記第2のサービス構成要素に対応するアクションの実行が待機している場合、上記第1のサービス構成要素に対応するアクションの終了に応じて、上記第2のサービス構成要素に対応するアクションを実行することが許されるかどうかを判定するステップを含む。
【0032】
本発明はまた、構成要素それぞれについての情報を検出するディスカバリ部と、構成要素毎に、該構成要素の少なくとも1つの所定の属性及び該構成要素と他の構成要素との関係を示す1組のデータを保持するリポジトリとを含むコンピュータ・システムにおいて、サービス構成要素に対応するアクションの実行を管理する方法を提供する。該方法は、コンピュータ・システムに下記ステップを実行させるステップを含む。該ステップは、
上記サービス構成要素を、該サービス構成要素に対応するアクションの対象である少なくとも1の構成要素に関連付けるステップと、
第1のサービス構成要素に対応するアクションの実行中に第2のサービス構成要素に対応するアクションへのリクエストがあり且つ該第2のサービス構成要素に対応するアクションの対象である少なくとも1の構成要素が該第1のサービス構成要素に対応するアクションの対象である構成要素に含まれる場合、
該第2のサービス構成要素に対応するアクションを実行することが許されるかどうかを判定するステップと、
上記アクションを実行することが許される場合、上記第2のサービス構成要素に対応するアクションを実行させるステップと、
上記アクションを実行することが許されない場合、上記第2のサービス構成要素に対応するアクションの実行を待機させるステップと、
上記第1のサービス構成要素に対応するアクションの対象である構成要素が上記第2のサービス構成要素に対応するアクションの対象である構成要素と重複しない場合、上記第2のサービス構成要素に対応するアクションを実行することを許すステップと、
上記第1又は第2のサービス構成要素に対応するアクションの終了後に、構成要素についての情報を検出するステップと
を含む。
【0033】
本発明はさらに、サービス構成要素に対応するアクションの実行を管理するコンピュータ・プログラムを提供する。該コンピュータ・プログラムは、コンピュータ・システムに、上記のいずれか一つに記載の方法の各ステップを実行させる。
【発明の効果】
【0034】
本発明の実施形態によれば、サービス構成要素に対応するアクションはその開始時に実行中の他のサービス構成要素(例えば、サービス・プロセス、サービス・ステップ)についての情報を参照できるので、サービス構成要素に対応するアクションよって利用される構成要素の競合が発生しなくなる。また、対象CIへのアクションによっては、サービス構成要素に対応するアクションの同時実行が可能となり、必ずしも待機する必要が無くなる。
【発明を実施するための最良の形態】
【0035】
以下、CMDBに関する基本的な用語を下記に説明する。
本発明の実施形態において、リポジトリは少なくとも1つの1組のデータを格納する。該1組のデータは、構成要素の少なくとも1つの所定の属性及び他の構成要素との関係を示すデータである。該1組のデータは例えば、ソフトウェア構成要素の少なくとも1つの所定の属性及び該ソフトウェア構成要素と他のソフトウェア構成要素又はハードウェア構成要素との関係を示すデータを含む。上記リポジトリは例えば、CMDBである。構成要素、及び該構成要素と他の構成要素との関係は例えば、静的な(static)データのインスタンス又はJava(サン・マイクロシステムズの商標)のクラスのインスタンスで実装されうる。上記リポジトリは、該1組のデータを保持するものであれば特に限定されないが、好ましい実施形態の1つはCMDBを記録するCMDB記録部である。
・構成要素(CI)
CIは、ITサービスマネジメントの対象範囲に属する構成要素に対応するデータであり、ITサービスマネジメントにおける管理対象の基本単位である。CIは例えば、ハードウェア及びソフトウェアを含むシステム資源、ITサービスの提供に必要な設備、ITサービスの運営に関する規程書、作業手順書及び構成図などのドキュメント類、ハードウェア又はソフトウェアの保守作業などのサービス、プロセス、並びに人的資源などを含む。今後も様々なタイプのCIが、CMDBで管理されるようになる。また、各CIはデータ・モデルのインスタンスとしてCMDB上で表現される。
・構成管理データベース(CMDB)
CMDBは、情報システムの全コンポーネントに関する情報の統合された保管・管理を行うデータベースである。CMDBは、各CIの少なくとも1つの所定の属性及び他のCIとの関係を記録する。CMDBは組織がコンポーネント間の関係を理解することを支援し、その構成を管理できるようにする。CMDBはITILフレームワークの構成管理プロセスの中核となっている。CMDBは、概念的にはデータベースであるが、物理的にはデータベース・システム、表計算ソフトのスプレッドシートの形態を取りうる。CMDBを利用することによって、管理者はCI間の関係を理解することが容易になる。
・構成要素インスタンス(CIインスタンス)
CIインスタンスは、CIに対応するデータである。各CIインスタンスは、データ・モデルのインスタンスとしてCMDB上で表現される。インスタンスの例は、静的なデータのインスタンス又はJava(サン・マイクロシステムズの商標)のクラスのインスタンスである。実装されたJavaのクラスのインスタンスは、例えばJava Data Objects(JDO)と呼ばれる、Javaのクラスのインスタンスを永続化してハードディスクに保存する仕組みにより、CMDB内に格納される。よって、コンピュータ・システムの電源を一旦切っても、作成されたJavaのクラスのインスタンスが消失することはなく、次に電源を投入したときに、記憶装置、例えばハードディスクから読み出され、メイン・メモリ上に展開されて、Javaのプログラムによって変更或いは削除可能なJavaのクラスのインスタンスとなる。以下では、CIがインスタンスとしてCMDB内に実装されるとして、説明を進める場合がある。
・データ・モデル
データ・モデルは、CIを定義するためのスキーマであり、管理されるCIとそれらCI間の関係の一貫した定義を提供する情報モデルである。具体的には、データ・モデルは、CIの所定の属性及び他のCI(製造装置、プロセスなど)との関係を定義する。データ・モデルの例として、IBMが提唱する構成管理データベース用のデータ・モデル「CDM」がある。CDMの実装は例えば、Unified Modeling Language(UML)に基づいて行われる。
・属性(Attributes)
属性は、CIを管理するに際して、個々のCIを特定し、CIを説明する。属性として、下記のものを挙げることができるがこれらに限定されない。CIの名前(CIの一般名称、例えばサーバ、クライアント、ファイアウォール)、製品番号(ID)(CIのある特定の実体を個別に識別するための番号であり、製造番号、シリアル番号など)、カテゴリ(CIの分類、例えばハードウェア、ソフトウェア、ドキュメント)、タイプ(カテゴリでの分類をさらに詳述したCIの説明)、型番(供給者の命名したCIのモデル番号)、保証期間(CIの供給者による保証期間)、バージョン番号(CIのバージョン番号)、ロケーション(CIが存在する場所、例えばPCの設置場所、ソフトウェアの書庫、媒体の保管場所、サービスを提供しているサイト)、所有責任者(CIの管理責任者の名前)、責任開始日(所有責任者が、該CIの責任者となった日付)、供給者(CIの開発元又は提供元)、ライセンス(ライセンス番号、ライセンス数など)、提供日(CIが組織に提供された日付)、受入日(CIが組織に受け入れられた日付)、使用開始日(CIが使用開始された日付)、CIのステータス(現在のステータス、例えば稼働中、テスト中、故障中、或いは将来のステータス、例えば予定されているCIのステータス)、CIインスタンスのステータス(CIインスタンスの有効又は無効)。今後もITサービスマネジメントで必要となる属性が、引き続き定義されていく。
・関係(Relation)
関係は、CI間の関係を表す。関係は、CIと同様にデータ・モデルで定義されうる。関係の例として、Common Data Model では、assigns、canConnect、canUse、connectAt、connects、controls、deployedOn、Located、Managed、Owned、provides、runAt、uses、usedByが挙げられる。今後もITサービスマネジメントで必要となる関係が、引き続き定義されていく。
【0036】
本発明の実施形態において、構成要素は、典型的に、ハードウェア構成要素及び/又はソフトウェア構成要素と、サービス構成要素とを含む。本発明の実施形態において、サービス構成要素に対応するアクションの実行を管理するためのコンピュータ・システムは、これら構成要素を含む単一又は複数のシステムを管理対象とする。該複数のシステムは、ネットワークによって有線又は無線接続されうる。
【0037】
サービス構成要素とは、1つのサービス・プロセス、複数のサービス・プロセス、1つのサービス・ステップ及び複数のサービス・ステップから選択されるサービスである。サービス・プロセスは、少なくとも1のサービス・ステップを含む。
よって、本発明の実施形態において、第1のサービス構成要素は、1つのサービス・プロセス、複数のサービス・プロセス、1つのサービス・ステップ及び複数のサービス・ステップから選択されるサービス構成要素である。同様に、本発明の実施形態において、第2のサービス構成要素は、1つのサービス・プロセス、複数のサービス・プロセス、1つのサービス・ステップ及び複数のサービス・ステップから選択されるサービス構成要素である。
【0038】
本発明の実施形態において「アクション」とは、サービス構成要素に対応するアクションの内容に従い、該アクションの対象である少なくとも1つの構成要素に対して行う処理をいう。
アクション・タイプとは、アクションの対象である構成要素に対して行う処理の種類である。アクション・タイプは例えば、新規、変更、削除、参照、検索などを含むが、これらに限定されない。新規とは例えば、アクションの対象である構成要素がデータベースの場合、該データベースにデータを追加する処理である。変更とは例えば、アクションの対象である構成要素がデータベースの場合、該データベース中のデータを更新する処理である。削除とは例えば、アクションの対象である構成要素がデータベースの場合、該データベース中のデータを削除する処理である。参照とは例えば、アクションの対象である構成要素がデータベースの場合、該データベース中のデータを参照する処理である。検索とは例えば、アクションの対象である構成要素がデータベースの場合、該データベースのデータ中のデータをクエリに従い検索する処理である。
アクション・タイプが新規、変更、削除の場合、アクションの対象である構成要素についての属性値が変化する。該変化する属性値が複数のサービス構成要素から共通で利用される場合、該複数のサービスを実行する順によって、該複数のサービス構成要素についての属性値に違いが生じうる。
一方、アクション・タイプが参照及び検索の場合、該構成要素についての属性値は変化しない。よって、該変化する属性値が複数のサービスから共通で利用される属性値であっても、該複数のサービスが実行される順によらず、該複数のサービスの実行結果は同じである。
【0039】
本発明の実施形態において「サービス構成要素に対応するアクションの対象である」とは、サービス構成要素に対応するアクションの実行により影響を受ける構成要素を示す。なお、本発明の実施形態において、影響を受ける対象は、アクションの影響範囲によって特定されうる。該範囲は、データ・モデルに規定された範囲によって又はユーザによって対象CI属性に設定されうる。データ・モデルは、モデル・テーブル(下記図1A、107を参照)に格納されうる。該範囲は例えば、ノードとの距離を示すレベル、CIインスタンスのモデル名、関係を用いた式で表されるが、これらに限定されない。該範囲はまた、サービス構成要素に対応するアクションの対象範囲を特定するために使用されるポリシー(以下、対象範囲特定ポリシー)によって動的に決定されうる。
「ノードとの距離を示すレベル」の1つの態様として、サービス構成要素を親ノード(0ノード)として表した場合に、該サービス構成要素と1ノードの関係にあるサービス構成要素をレベル0、レベル1の構成要素と1ノードの関係にある構成要素をレベル1、レベル1の構成要素と1ノードの関係にある構成要素をレベル2、・・・、レベルnの構成要素とnノードの関係にある構成要素をレベルn+1、と表す。
「ノードとの距離を示すレベル」の他の態様として、サービス構成要素をノードとして表した場合、サービス構成要素と関係のある構成要素をレベル0、レベル0の構成要素と関係のある構成要素をレベル1、レベル1の構成要素と関係のある構成要素をレベル2、・・・、レベルnの構成要素と関係のある構成要素をレベルn+1、と表す。例えば、ノードに対応するアクション構成要素についてデータベースを更新するアプリケーションとした場合、データベースに対応する構成要素はレベル0であり、該データベースがインストールされているOSはレベル1であり、該OSがインストールされているコンピュータはレベル2である。上記関係は、例えば、runsOn and useなどの構成要素間の関係によっても特定されうる。
「CIインスタンスのモデル名」とは、CIインスタンスに定義される該インスタンスが、どのデータ・モデルを使用して作成されたかを示すモデル名である。代替的に、CIインスタンスに定義される該インスタンスがどのCIのものであるかを特定するための「インスタンス名」を使用してもよい。
「関係を用いた式」とは例えば、runsOn and useなどの構成要素間の関係で表されるが、これらに限定されない。該例は、サービス構成要素に対応するアクション上で動いている構成要素(サービス構成要素を含む)に対応するアクションを使用している構成要素が、サービス構成要素に対応するアクションの実行により影響を受ける構成要素であることを示す。
「対象範囲特定ポリシー」は、サービス構成要素と関係のある構成要素を決めるために使用されうる。該対象範囲ポリシーは、構成要素、特にサービス構成要素、ソフトウェア構成要素、ハードウェア構成要素の属性及びこれら構成要素間の関係の少なくとも1以上の条件を用いて定義される。
【0040】
本発明の実施形態において「実行可否を判定するためのルールを定義するポリシー」(以下、可否判定ポリシー)とは、複数のサービスによって共通する構成要素が利用される場合の動作ルールを定義したデータである。可否判定ポリシーは例えば、先行のサービス構成要素に対応するアクション(以下、先行プロセス)のアクション・タイプ及び後発のサービス構成要素に対応するアクション(以下、後発プロセス)のアクション・タイプに応じた後発プロセスの動作で表される。
【0041】
本発明の実施形態において、ステータス制御部が可否判定ポリシーを使用して、サービス構成要素に対応するアクションの実行可否を判定しうる。ステータス制御部は、サービス・プロセスを管理するために、実行中のサービス構成要素についての対象CI属性を管理する。対象CI属性は、サービス・プロセスに対応するアクションの対象であるCI(以下、サービス・プロセスの対象CIに対するアクション・タイプ及び影響範囲)を表す。
【0042】
以下、図面に従って、本発明の実施形態を説明する。本実施形態は、本発明の好適な態様を説明するためのものであり、本発明の範囲をここで示すものに限定する意図はないことを理解されたい。また、以下の図を通して、特に断らない限り、同一符号は、同一の対象を指す。
【0043】
図1Aは、CIを管理するための、CMDBを含む従来のコンピュータ・システム(100)の例を示す。
図1Aは、CIの例として、サービスA及びサービスBを記載する。
コンピュータ・システム(100)は、ディスカバリ部(101)、CI同定部(102)、CIインスタンス作成部(103)、属性及び関係更新部(104)及びCMDB(105)を含む。ディスカバリ部、CI同定部、CIインスタンス作成部、属性及び関係更新部及びCMDBは、単独のコンピュータ上に実装されていてもよく、或いは複数のコンピュータ上に分散して実装されていてもよい。コンピュータ・システム(100)はさらに、ディスカバリ・テーブル(106)、モデル・テーブル(107)及び関係テーブル(108)を含む。これらテーブルは、単独のコンピュータ上に実装されていてもよく、或いは複数のコンピュータ上に分散して実装されていてもよい。
また、図1Aは、TADDMコンソールの画面(109)の例を示す。該画面は、CI及びCI間の接続関係を示す。なお、該画面に表示されているCI及びCI間の接続関係は一例であり、コンピュータ・システム(100)の管理対象であるCI及びCI間の接続関係全てを表示しているものではない。
コンピュータ・システム(100)は、それ自身の管理対象である構成要素を管理する。コンピュータ・システム(100)の管理対象は、該コンピュータ・システム(100)がディスカバリしうる対象の構成要素である。
【0044】
ディスカバリ部(101)は、CMDBの管理対象であるCIについての情報の検出を実行する(ディスカバーともいう)。該CIの一部が、TADDMコンソールの画面(109)に表示されている。コンピュータ・システム(100)は、複数のディスカバリ部(101)を有していてもよい。好ましくは、管理対象は、ネットワークを介して、コンピュータ・システムに接続されている。ネットワークは、有線接続であるか無線接続であるかを問わない。コンピュータ・システムの管理者は、検出の対象を任意に設定しうる。検出の範囲は例えば、ドメイン名、IPアドレス、MACアドレス、機器の識別子若しくはデータベース名又はこれらの組み合わせにより指定することができる。管理対象であるCIが例えば機器又はサービスである場合、該機器又はサービスについての情報が夫々検出される。検出された情報は、新たなCIについての情報、又は既存のCIの更新された属性若しくは関係の値でありうる。新たなCIとは、ディスカバリ部(101)によって検出され、CMDB(105)内に登録されていないCIである。既存のCIとは、該CIのインスタンスがCMDB(105)内に既に登録されているCIである。ディスカバリ部(101)は、CIについての情報を、ディスカバリ・テーブル(106)内に格納されたディスカバリ・データ(例えばA-Discovery)(図2B、202)に従い検出する。どのディスカバリ・データを使用するかは、データ・モデル(図2B、201)内のディスカバリ方法に指定されている。ディスカバリ部(101)は、検出した、CIについての情報をCI同定部(102)に渡す。
【0045】
CI同定部(102)は、上記CIについての情報をディスカバリ部(101)から受け取り、そして検出結果の処理を行う。CI同定部(102)は、上記CIについての情報が、新しいCIについての情報か、又は既存のCIの更新された属性若しくは関係の値かどうかを、CMDB(105)を参照して判定する。該判定は例えば、CMDBに格納されたCIのインスタンス名を、上記CIについての情報と比較して行われうる。上記CIについての情報が新しいCIに関するものであることに応じて、CI同定部(102)は、該情報をCIインスタンス作成部(103)に渡す。一方、上記CIについての情報が既存のCIの更新された属性若しくは関係の値であることに応じて、CI同定部(102)は、該情報を属性及び関係更新部(104)に渡す。
【0046】
CIインスタンス作成部(103)は、モデル・テーブル(107)に格納されたデータ・モデル(図2B、201)、及び関係テーブル(108)に格納された関係モデル(図2B、204)に従い、CIについての情報から、該CIの所定の属性及び他のCIとの関係を示す1組のデータを作成する。該1組のデータは例えば、静的なデータのインスタンス又はJava(サン・マイクロシステムズの商標)のクラスのインスタンスで実装されうる。該1組のデータの例が、CIインスタンスである。CIインスタンスの例を図2B(203)に示す。上記1組のデータは、CMDB(105)内に格納される。なお、1組のデータは、CIインスタンス内に属性及び関係を有していてもよく(図2B、203を参照)、或いはCIインスタンス内に属性を有し、それとは別に関係インスタンスとして別々にCMDB(105)内に格納されていてもよい。後者の場合、CIインスタンスは、関連する関係インスタンスを特定するためのリンク付けを有する。
【0047】
属性及び関係更新部(104)は、ディスカバリ部(101)とともにトラッキングを実現する。属性及び関係更新部(104)は、CIの更新された属性若しくは関係の値を、CMDB内に格納された該CIのCIインスタンスに反映する。すなわち、該CIのCIインスタンスの属性或いは関係の値を更新する。該更新は、該値をディスカバリ部(101)によって検出されたCIについての情報と置き換えることによって行われる。該置き換えは、CIインスタンスの属性或いは関係の値のすべてをディスカバリ部(101)によって検出されたCIについての情報と置き換えてもよく、或いは異なる値のみを置き換えてもよい。
【0048】
CMDB(105)は、CIのCIインスタンス(図2B、203)を格納する。
【0049】
ディスカバリ・テーブル(106)は、ディスカバリ・データ(図2B、202)を格納する。ディスカバリ・データは、ディスカバリ部(101)によってCIについての情報が検出される際に使用される。ディスカバリ・データ(図2B、202)は例えば、静的なデータのインスタンス又はJava(サン・マイクロシステムズの商標)のクラスのインスタンスで実装されうる。ディスカバリ・データは、ディスカバリ・ポリシーとも呼ばれる。ディスカバリ・データ(図2B、202)は、ディスカバリ部(101)が検索する範囲、すなわちCIの検索範囲である収集対象(スコープ)、収集する属性、及び収集する関係を含む(図2B、202)。収集対象は例えば、サブネットIPアドレス、IPアドレスの範囲、個々のIPアドレス、MACアドレス、機器の識別子、ホストネーム若しくはデータベース名又はそれらの組み合わせを用いて指定されうる。別の態様として、収集対象を、コンピュータ・システム(100)にネットワークを介して接続されたスケジュール管理データベース(図示せず)としてもよい。スケジュール管理データベースには例えば、機器を使用するプロセス管理に関するデータが格納されている。さらに別の態様として、収集対象を、バッチ処理定義ファイルを格納するデータベース(図示せず)としてもよい。収集対象がバッチ処理定義ファイルを格納するデータベースの場合、ディスカバリ部(101)は、バッチ処理定義ファイルの中身を読み込むことにより検出を行う。バッチ処理定義ファイルには、例えば機器をどの順に使用するかのデータが格納されている。
【0050】
モデル・テーブル(107)は、データ・モデル(図2B、201)を格納する。データ・モデルは、CIインスタンス作成部(103)によって該CIの所定の属性及び他のCIとの関係を示す1組のデータが作成される際に使用される。
【0051】
関係テーブル(108)は、関係モデル(図2B、204)を格納する。関係モデルは、CIインスタンス作成部(103)によって該CIの所定の属性及び他のCIとの関係を示す1組のデータが作成される際に使用される。
【0052】
図1Aは、ディスカバリ部(101)が、コンピュータ・システム(100)とネットワークを介して接続された管理対象であるCIに関する情報を検出し、サービスA、及びサービスB並びにそれらサービスの関係についての情報を検出したことを示す。次に、CI同定部(102)は、該検出した情報が新しいCIについてのものかについてCMDB(105)を参照して判断する。該判断に応じて、CIインスタンス作成部(103)は、サービスAのCIインスタンス及びサービスBのCIインスタンス、並びにそれらサービスの関係(usedBy)のインスタンスを作成する。CIインスタンス作成部(103)は、該作成した各インスタンスをCMDB(105)内に格納する。図1Aでは、サービスBのCIインスタンスが、サービスAのCIインスタンスとusedByの関係にあることを示す。
ディスカバリ部(101)は、検出したCIについての情報をもとに、データ・モデル(図2B、201)に従って、CI及びそれらCI間の関係を作成し、CMDB(105)に登録する。CMDB(105)は、CIの属性及び他のCIとの関係を格納する。従って、システム管理者は、CMDB(105)を用いて、CI間のリアルな依存関係を抽出することが可能である。
【0053】
図1Aでは、構成要素としてサービス構成要素であるサービスA及びサービスBを例にして説明した。上記説明は、サービス構成要素をハードウェア構成要素及びその他の構成要素に置き換えた場合にも同様に適用される。
【0054】
図1Bは、構成管理のためのツールの概要を示す。
構成管理のためのツールは、構成要素についての情報(以下、単に構成情報という場合がある)を自動収集する機能(ディスカバリ)、構成情報をグラフィカルに表示する機能(トポロジー)及び変更履歴、構成比較などの分析を行う機能(アナリティクス)を有する。例えば、TADDMサーバは、情報システムについての構成情報を、ssh、SNMP、WMIなどを使用して取得する。上記構成情報は例えば、各情報システムのオペレーティング・システムの種類又はその構成、アプリケーションの種類又はその構成値である。TADDMサーバは、取得した情報を、CMDB内にCIインスタンスとして格納する。TADDMサーバは、CMDBに格納したCIインスタンス基づいて、管理者のコンピュータに構成情報、及び変更履歴情報を送る。管理者のコンピュータは、該情報を用いて、構成情報の表示及び変更履歴の表示を行う。
【0055】
図2Aは、CI(例えば、サービスA及びサービスB)のCIインスタンス、及びそれらサービスの関係(usedBy)インスタンスの作成を示す。
サービスAのCIインスタンスは、ディスカバリ部(図1A、101)によって検出されたサービスAについての情報から、サービスAのデータ・モデルを用いてCIインスタンス作成部(図1A、103)によって作成される。同様に、サービスBのCIインスタンスは、ディスカバリ部(図1A、101)によって検出されたサービスBについての情報から、サービスBのデータ・モデルを用いてCIインスタンス作成部(図1A、103)によって作成される。サービスA及びサービスBの各データ・モデルは、モデル・テーブル(図1A、107)に格納されている。CI同士の関係、すなわちサービスAとサービスBとの関係(usedBy)のインスタンスは、ディスカバリ部(図1A、101)によって検出されたサービスAについての情報から、関係モデルに従いCIインスタンス作成部(図1A、103)によって作成される。関係モデルは、関係テーブル(図1A、108)に格納されている。
また、サービスが例えばサービスB1、B2、B3である場合、サービスB1、B2、B3についての各情報がサービスBのデータ・モデルを使用してインスタンス化されて、サービスB1のCIインスタンス、サービスB2のCIインスタンス、サービスB3のCIインスタンスが夫々作成される。サービスB1、B2、B3の各CIインスタンスもまた、CMDB(105)内に格納される。
【0056】
図2Bは、モデル・テーブル(図1A、107)内に格納されたデータ・モデル(201)、ディスカバリ・テーブル(図1A、106)内に格納されたディスカバリ・インスタンス(202)、CMDB(図1A、105)内に格納された(サービスAの)CIインスタンス(203)及び関係テーブル(図1A、108)内に格納された関係モデル(204)を示す。
【0057】
データ・モデル(201)は、CIを定義するためのスキーマである。データ・モデル(201)は例えば、どのCIのモデルかを示す「モデル名」、モデル名に指定されたCIが有する属性を示す「モデル属性」、モデル名に指定されたCIと他のCIがとりうる「関係」、及びモデル名に指定されたCIを検出するためのディスカバリ・インスタンスを特定する「ディスカバリ方法」の各記述を含む。モデル属性は、例えばIBMが提唱する構成管理データベース用のデータ・モデル「CDM」に規定された属性に従い規定されるが、これらに限定されない。CDMでは、2006年の時点において、2609種類の属性が規定されている。CMDBの管理者は、データ・モデル(201)における属性を任意に指定しうる。関係は、例えば上記CDMに規定された関係に従い規定されるが、これらに限定されない。CDMでは、2006年の時点において、57種類の関係が規定されている。ディスカバリ方法は、ディスカバリ・インスタンス名で特定されうる。図2Bの場合、A-Discoveryである。
【0058】
ディスカバリ・インスタンス(202)は、データ・モデル(201)のディスカバリ方法によって特定されるディスカバリ・インスタンスの「名前」、ディスカバリ部(図1A、101)によって収集する管理対象(CI)の「収集対象(スコープ)」、ディスカバリ部(図1A、101)によって収集する管理対象(CI)の「収集する属性」及び「収集する関係」、並びに該ディスカバリ・インスタンスがアクティブであるか或いはインアクティブであるかを示す「ステータス」の各記述を含む。
【0059】
CIインスタンス(203)は、該インスタンスがどのCIのものであるかを特定するための「インスタンス名」、該インスタンスが、どのデータ・モデルを使用して作成されたかを示す「モデル名」、データ・モデルによって特定された各属性の「属性値」、データ・モデルによって特定された各「関係」の記述(値)、インスタンスがアクティブであるか或いはインアクティブであるかを示す「ステータス」、及び該CIインスタンスが作成された「作成日時」の各記述を含む。CIインスタンスは好ましくは、CIインスタンスに特有のCIインスタンス識別子をさらに含む。CIインスタンス識別子は、当該CIインスタンスを他のCIインスタンスと区別できるものであれば特に限定されないが、例えばホストネーム、シリアルナンバー若しくは一定の値である他の属性の組み合わせを使用しうる。図2BのCIインスタンス(203)は、サービスAのCIインスタンスであること;データ・モデルAを使用してインスタンス化されたこと;属性としてS、T及びUを含み、これらが夫々値を有すること;関係として、Mによって使用されること(usedBy:M)、Eに接続されること(connectAt:E)、及びHで実行すること(runAt:H);CIインスタンスがアクティブであること、並びに該CIインスタンスの作成日時のデータを示す。
【0060】
関係モデル(204)は、データ・モデル(201)によって特定される関係を定義するためのスキーマである。関係モデル(204)は、usedByなどの「関係名」、該関係の対象となるデータ・モデルを特定するための「対象となるデータ・モデル」、該関係の「説明」の各記述を含む。
【0061】
図3Aは、本発明の実施形態におけるサービス構成要素の例を示す。
(1つの)サービス構成要素は例えば、1つのサービス・プロセス(301)を1単位として、複数のサービス・プロセス(図示せず)を1単位として、1つのサービス・ステップ(302)を1単位として及び複数のサービス・ステップ(303)を1単位としてのいずれかである。
よって、本明細書において、サービス構成要素という場合、1つのサービス・プロセスそのものがサービス構成要素である態様、複数のサービス・プロセスがサービス構成要素である態様、1つのサービス・ステップそのものがサービス構成要素である態様、複数のサービス・ステップがサービス構成要素である態様を含む。
【0062】
図3Bは、本発明の実施形態における、サービス構成要素の組み合わせの例を示す。
図3Bの311は、サービス構成要素として1つのサービス・プロセス(314)及びサービス構成要素として1つの別のサービス・プロセス(315)を示す。例えば、サービス構成要素(314)が第1のサービス構成要素であり、サービス構成要素(315)が第2のサービス構成要素である。或いは、サービス構成要素(315)が第1のサービス構成要素であり、サービス構成要素(314)が第2のサービス構成要素である。
図3Bの312は、サービス構成要素として1つのサービス・プロセス(316)及びサービス構成要素として上記サービス・プロセス(316)と異なるサービス・プロセス中の複数のサービス・ステップ(317)を示す。例えば、サービス構成要素(316)が第1のサービス構成要素であり、サービス構成要素(317)が第2のサービス構成要素である。或いは、サービス構成要素(317)が第1のサービス構成要素であり、サービス構成要素(316)が第2のサービス構成要素である。
図3Bの313は、サービス構成要素として1つのサービス・プロセス中の複数のサービス・ステップ(318)及びサービス構成要素として上記サービス・プロセスと異なる別のサービス・プロセス中の複数のサービス・ステップ(319)を示す。例えば、サービス構成要素(318)が第1のサービス構成要素であり、サービス構成要素(319)が第2のサービス構成要素である。或いは、サービス構成要素(319)が第1のサービス構成要素であり、サービス構成要素(318)が第2のサービス構成要素である。
上記は、サービス構成要素の組み合わせの一例であって、上記3つの態様(311、312、313)に限定されるものでない。
【0063】
図3Cは、本発明の実施形態における、データ・モデル(311)、(サービスAの)CIインスタンス(313)及び関係モデル(314)を示す。
データ・モデル(311)は、モデル・テーブル(図1A、107)内に格納される。CIインスタンス(313)は、CMDB(図1A、105)内に格納される。関係モデル(314)は、関係テーブル(図1A、108)内に格納される。
本発明の実施形態におけるデータ・モデル(311)には、図2Bのデータデル(201)と比較して、属性「アクション・タイプ」及び属性「影響範囲」が追加されている。属性「アクション・タイプ」は例えば、新規、変更、削除、参照及び検索であるが、これらに限定されない。属性「影響範囲」は例えば、モデル名に指定されたCIからの距離を示すレベル、CIインスタンスのモデル名、関係であるが、これらに限定されない。
同様に、本発明の実施形態におけるCIインスタンス(313)には、図2BのCIインスタンス(203)と比較して、属性「アクション・タイプ」及び属性「影響範囲」が追加されている。CIインスタンス(313)の属性「アクション・タイプ」には、データ・モデル(311)で定義されたアクション・タイプのうちの少なくとも1つがインスタンス化されている。
本発明の実施形態では、図5の説明で述べるように、ステータス制御部がサービス・プロセスに対応するCIインスタンスをCMDB内に動的に定義し、サービス・プロセスの対象先となるCIとの間に関係を定義するために、又はプロセス・エンジンがサービス・プロセスの対象先となるCIをポイントするパラメータをサービス・プロセス内に定義するために、図2Bで示されるディスカバリ・データが不要である。
【0064】
図3D〜図3Hは、本発明の実施形態における、サービス構成要素に対応するアクションの対象範囲を特定するために使用されるポリシー(対象範囲特定ポリシー)の例を示す。
対象範囲特定ポリシーの条件例を以下に示す。
1.OS、次にミドルウェア、次にアプリケーションという垂直の依存関係を有する対象範囲特定ポリシーの例
・対象範囲特定ポリシーA:構成要素間が、「InstalledOn」の関係にあるもの
・対象範囲特定ポリシーB:対象範囲特定ポリシーA、且つ、対象である構成要素から1ノード(1段分)までのもの
2.ビジネス・アプリケーションを構成する複数のサーバ上の構成要素についての対象範囲特定ポリシーの例
・対象範囲特定ポリシーC:双方向の構成要素間で「UsedBy」の関連にあるもの
・対象範囲特定ポリシーD:対象範囲特定ポリシーCの結果に対して、対象範囲特定ポリシーAを適用したもの
3.その他
・任意の関係を有する構成要素のうち、CIのタイプ属性が「ミドルウェア」のもの
【0065】
条件の記述形式及び指定できる内容は、適切な実装方法により実現されうる。例えば、条件は、XML言語を用いて記述されうる。指定できる内容は例えば、属性及び関係を含む。
以下に、上記対象範囲特定ポリシーA乃至Dを用いて、構成要素と関係のある構成要素を抽出する例を示す。
【0066】
図3Dは、本発明の実施態様である、対象範囲特定ポリシーを説明するために使用する、構成要素及び構成要素間の関係を示す。なお、図3Dでは、便宜的にソフトウェア構成要素を例としているが、該ソフトウェア構成要素をサービス構成要素又はハードウェア構成要素に置き換えることによって、同様に対象範囲特定ポリシーを説明することが可能である。
OS(オペレーティング・システム) Aは、RDBMS(リレーショナルデータベース管理システム)と「InstalledOn」の関係にある。RDBMSは、データベースと「InstalledOn」の関係にある。
OS Bは、App(アプリケーション)サーバと「InstalledOn」の関係にある。Appサーバは、Webアプリと「InstalledOn」の関係にある。
データベースは、Webアプリとお互いに「usedBy」の関係にある。
【0067】
図3Eは、本発明の実施態様である、対象範囲特定ポリシーAを用いた例を示す。
CIとしてデータベースを指定し、且つ、対象範囲特定ポリシーAを指定すると、「InstalledOn」の関係にあるCIがアクションの対象範囲である構成要素として特定される。結果として、データベース、RDBMS及びOSのソフトウェア構成要素が特定される。
【0068】
図3Fは、本発明の実施態様である、対象範囲特定ポリシーBを用いた例を示す。
CIとしてWebアプリを指定し、且つ、対象範囲特定ポリシーBを指定すると、「InstalledOn」の関係にあるCIのうち、最初の1ノード分がアクションの対象範囲である構成要素として特定される。結果として、Webアプリ及びAppサーバのソフトウェア構成要素が特定される。
【0069】
図3Gは、本発明の実施態様である、対象範囲特定ポリシーCを用いた例を示す。CIとしてデータベースを指定し、且つ、対象範囲特定ポリシーCを指定すると、「usedBy」にある関係を双方向で有するソフトウェア構成要素が特定される。結果として、データベース及びWebアプリのソフトウェア構成要素が特定される。
【0070】
図3Hは、本発明の実施態様である、対象範囲特定ポリシーDを用いた例を示す。CIとして、データベースを指定し、且つ、対象範囲特定ポリシーDを指定すると、データベースとWebアプリがアクションの対象範囲である構成要素として特定され、さらにそれら対象範囲に「InstalledOn」の関係にあるCIがアクションの対象範囲である構成要素として特定される。結果として、データベース、RDBMS、OS A並びにWebアプリ、Appサーバ及びOS Bのソフトウェア構成要素が特定される。
【0071】
図4は、従来のサービス・プロセス処理の例を示す。
サービス・プロセスAは、サービス・プロセスAへのリクエストを処理するためのプロセスである。サービス・プロセスBは、サービス・プロセスBへのリクエストを処理するためのプロセスである。ここで、サービス・プロセスA及びサービス・プロセスBは、同じCIを参照するサービス・プロセスであるとする。
従来のサービス・プロセスの処理では、サービス・プロセスそれぞれの管理者が、サービス・プロセスA及びサービス・プロセスBを定義し、そして定義したサービス・プロセスを記憶装置に格納する。
サービス・プロセスAを実行するにあたり、サービス・プロセスAの管理者は、サービス・プロセスAへのリクエストを発行する。プロセス・エンジンは、該リクエストが到着(ステップ401)すると、上記記憶装置からサービス・プロセスAを読み出し、サービス・プロセスAを実行(ステップ402)する。サービス・プロセスAの実行後、ディスカバリは、構成要素についての情報を取得する。属性及び関係更新部(図1A、104)は、該取得したCIの情報に基づいて、CMDB内のCIインスタンスの属性値又は関係値を更新する(ステップ403)。
上記従来のサービス・プロセスの処理において、サービス・プロセスAの実行中に、サービス・プロセスBの管理者が、サービス・プロセスAで参照するCIと同じCIを参照するサービス・プロセスBへのリクエストを発行する場合に、次のような問題が生じるおそれがある。サービス・プロセスBの管理者が、サービス・プロセスAの存在に気付いた場合、サービス・プロセスBの管理者は、それぞれのサービス・プロセスの内容によっては待機する必要がない場合であっても、サービス・プロセスの競合を回避するために、サービス・プロセスAの実行が完了し、CI情報が更新されるまで、サービス・プロセスBへのリクエストの発行を待機しなければならない。或いは、サービス・プロセスBの管理者が、サービス・プロセスAの存在に気付かない場合、サービス・プロセスBがサービス・プロセスAと同時に実行され、その結果としてサービス・プロセスA及びサービス・プロセスB間で競合が発生し、サービス・プロセスA、Bの両方、又はそのいずれかが失敗する可能性がある。
【0072】
図5は、本発明の実施形態における、サービス構成要素に対応するアクションの実行管理の概略を示す。
サービス・プロセスA(501)のシステムの管理者又は管理者は、サービス・プロセスA(501)に対応するアクションの対象であるCI(以下、サービス・プロセスAの対象CI)に対するアクション・タイプ及び影響範囲を表す対象CI属性(507)を定義する。同様に、サービス・プロセスB(502)のシステムの管理者又は管理者は、サービス・プロセスB(502)に対応するアクションの対象であるCI(以下、サービス・プロセスBの対象CI)に対するアクション・タイプ及び影響範囲を表す対象CI属性(507)を定義する。
上記定義はそれぞれ、データ・モデル(図3C、311)の属性「アクション・タイプ」及び属性「影響範囲」に定義された情報を使用して、インスタンス化されうる。インスタンス化されたCIインスタンスは、図3Cに示されている(313)。代替的に、該定義は、上記データ・モデル(図3C、311)とは別途にサービス・プロセスの管理者によって定義され、記憶媒体、例えばCMDB内に格納されていてもよい。
該対象CI属性(507)は、対象CIへのアクション・タイプ及び対象CIの影響範囲を含む。「アクション・タイプ」は例えば、新規、変更、削除、参照及び検索である。「影響範囲」は例えば、モデル名に指定されたCIからの距離を示すレベル、CIインスタンスのモデル名、関係である。
対象CI属性(507)の実装例は、下記の通りである。
1.ステータス制御部(503)が、サービス・プロセスA及びB(501、502)に対応するCIインスタンス(505A及び505B)を例えばCMDB内に動的に定義する。そして、サービス・プロセスA(501)と該サービス・プロセスA(501)の対象CIとの間に関係(506A)を定義する。同様に、サービス・プロセスB(502)と該サービス・プロセスB(502)の対象CIとの間に関係(506B)を定義する。代替的に、サービス・プロセスのシステム管理者又は管理者は、サービス・プロセスA又はB(501、502)の対象CIをポイントするパラメータをサービス・プロセス(501、502)内にそれぞれ定義してもよい。
ステータス制御部(503)は、サービス・プロセス(501、502)間の依存関係の管理を行えるように、実行中の全サービス・プロセスの対象CI属性を管理する。
以下では、先行サービス・プロセスA(501)の実行中に、後発のサービス・プロセスB(502)へのリクエストが発生した場合を例に説明する。
サービス・プロセスA(501)及びサービス・プロセスB(502)は、CMDBに定義されたそれぞれの対象CI属性(507)を有する。また、プロセス・エンジン(図示せず)は、サービス・プロセスA(501)の開始時に該サービス・プロセスA(501)についての対象CI属性(507)をステータス制御部(503)に提供している。サービスBへのリクエストを受け、プロセス・エンジン(図示せず)は、後発サービス・プロセスB(502)の開始時に対象CI属性(507)をステータス制御部(503)に提供し、ステータス制御部(503)を介して、サービス・プロセスA(501)の対象CI属性(507)を参照する。
ステータス制御部(503)は、上記実行されたサービス・プロセスB(502)及びサービス・プロセスA(501)の対象CI属性(507)から、該実行されたサービス・プロセスB(502)の実行可否を判定する。該判定は、ステータス制御部(503)に定められた可否判定ポリシー(510)を利用して行われうる。可否判定ポリシーとは、複数のサービスによって共通する構成要素が利用される場合の動作ルールを定義したデータである。
また、上記判定はまた、プロセス・エンジン(図示せず)によって実行されたサービス・プロセスB(502)の管理者によって判定されてもよい。サービス・プロセスB(502)の管理者は、管理装置の表示装置上に表示されたサービス・プロセスB(502)のアクションの実行可否の選択を許すインタフェースを介して、アクションを実行させるか又はアクションを待機させるかを判断する。
ディスカバリ部(508)は、サービス・プロセスA及びB(501、502)の実行後にCIの情報を取得する。次に、属性及び関係更新部(図1A、104)は、該取得したCIの情報に基づいて、CIインスタンスの属性値又は関係値を更新する。
【0073】
上記可否判定ポリシーの記述例を以下に示す。
1.process1(change) and process2(ANY) --> wait
(先行プロセス(変更)→後発プロセス(ANY)を待機)
該例は、先行プロセス1のアクション・タイプが「変更」であるならば、後発プロセス2のアクション・タイプが何であっても、後発プロセス2は待機する、というポリシーである。
2.process1(ANY) and process2(delete、change) --> wait
(先行プロセス(ANY)→後発プロセス(削除、変更)を待機)
該例は、先行プロセス1のアクション・タイプが何であっても、後発プロセス2のアクション・タイプが「削除」又は「変更」であるならば、後発プロセス2は待機する、というポリシーである。
3.process1(change、delete) and process2(ANY) --> wait
(先行プロセス(変更、削除)→後発プロセス(ANY)を待機)
該例は、先行プロセス1のアクション・タイプが「変更」又は「削除」であるならば、後発プロセス2のアクション・タイプが何であっても、後発プロセス2は待機する、というポリシーである。
4.process1(ANY) and process2(delete) --> wait
(先行プロセス(ANY)→後発プロセス(削除)を待機)
該例は、先行プロセス1のアクション・タイプが何であっても、後発プロセス2のアクション・タイプが「削除」であるならば、後発プロセス2は待機する、というポリシーである。
5.process1(search、refer) and process2(search、refer) --> go
(先行プロセス(検索、参照)→後発プロセス(検索、参照)を実行)
該例は、先行プロセス1のアクション・タイプが「検索」又は「参照」であり、後発プロセス2のアクション・タイプが「検索」又は「参照」であるならば、後発プロセス2は実行可能である、というポリシーである。先行及び後発の両プロセスのアクション・タイプが「検索」又は「参照」の場合、実行順番が入れ替わっても不整合は生じないので、後発プロセスが実行可能であると判定される。
6.process1(search、refer) and process2(change) --> wait
(先行プロセス(検索、参照)→後発プロセス(変更)を待機)
該例は、先行プロセス1のアクション・タイプが「検索」又は「参照」であっても、後発プロセス2のアクション・タイプが「変更」であるならば、後発プロセス2は待機する、というポリシーである。先行プロセスのアクション・タイプが「検索」又は「参照」の場合、後発プロセスで先に変更をおこなうと不整合が生じる可能性があるので、後発プロセスは待機であると判定される。
先行プロセスが複数ある場合、先行プロセスが完了する毎に判定が実行される。そして、適用される可否判定ポリシー全てによって後発プロセスが実行可能であると判定される場合のみ、後発プロセスが実行可能であると判定され、適用される可否判定ポリシーの少なくとも1つによって後発プロセスが待機させると判定される場合、後発プロセスは待機すると判定される。
【0074】
図6は、本発明の実施形態における、サービス・プロセスの実行可否を決定する流れを示す。
以下では、先行サービス・プロセスA(602)の実行中に、後発のサービス・プロセスB(604)へのリクエストが発生した場合を例に説明する。
サービス・プロセスA及びB(602、604)それぞれの対象CI属性(601、603)は、サービス・プロセスA及びB(602、604)の開始時に、ステータス制御部(605)に提供される。サービス・プロセス(602、604)の実行可否は、ステータス制御部(605)又はサービス・プロセスA及びB(602、604)の各管理者が決定しうる。サービス・プロセスA及びB(602、604)の完了順が逆転した場合であっても、対象CI(607)の更新情報を一意に保てる場合、ステータス制御部(605)又はサービス・プロセスA及びB(602、604)の各管理者は、新規リクエストのサービス・プロセス(602、604)を実行可能と判定してもよい。
以下に、ステータス制御部が実行可否を判定する場合とサービス・プロセスの管理者側で実行可否を判定する場合について説明する。
A.ステータス制御部が実行可否を判定する場合
ステータス制御部(605)は、先行サービス・プロセスA(602)の対象CI属性(601)に含まれる対象CIの影響範囲に定義された対象CI(CI1、CI2及びCI3)と、後発サービス・プロセスB(604)の対象CI属性(603)に含まれる対象CIの影響範囲に定義された対象CI(CI3、CI4及びCI6)とが重なっていない場合、後発サービス・プロセスB(604)は実行可能であると判定する。ステータス制御部(605)は、上記影響範囲に定義された対象CIが重なっている場合、ステータス制御部(605)に定義された可否判定ポリシー(606)を使用して、後発サービス・プロセスB(604)の実行可否を判定する。可否判定ポリシー(606)は例えば、管理者によってステータス制御部(605)内に定義されうる。ステータス制御部(605)が、可否判定ポリシー(606)を使用して、後発サービス・プロセスB(604)の動作を決定する例は、以下の通りである。
1.process1(change) and process2(ANY) --> wait
(先行プロセス(変更)→後発プロセス(ANY)を待機)
該例は、先行サービス・プロセスA(602)のアクション・タイプが「変更」であるならば、後発サービス・プロセスB(604)のアクション・タイプが何であっても、後発サービス・プロセスB(604)は待機する、というポリシーである。ステータス制御部(605)は、先行サービス・プロセスA(602)のアクション・タイプが「変更」である場合、後発サービス・プロセスB(604)を待機させる。
2.process1(ANY) and process2(delete、change) --> wait
(先行プロセス(ANY)→後発プロセス(削除、変更)を待機)
該例は、先行サービス・プロセスA(602)のアクション・タイプが何であっても、後発サービス・プロセスB(604)のアクション・タイプが「削除」又は「変更」であるならば、後発サービス・プロセスB(604)は待機する、というポリシーである。ステータス制御部(605)は、後発サービス・プロセスB(604)のアクション・タイプが「削除」又は「変更」である場合、後発サービス・プロセスB(604)を待機させる。
3.process1(change、delete) and process2(ANY) --> wait
(先行プロセス(変更、削除)→後発プロセス(ANY)を待機)
該例は、先行プロセス1のアクション・タイプが「変更」又は「削除」であるならば、後発プロセス2のアクション・タイプが何であっても、後発プロセス2は待機する、というポリシーである。ステータス制御部(605)は、後発サービス・プロセスB(604)のアクション・タイプが何であっても、後発サービス・プロセスB(604)を待機させる。
4.process1(ANY) and process2(delete) --> wait
(先行プロセス(ANY)→後発プロセス(削除)を待機)
該例は、先行サービス・プロセスA(602)のアクション・タイプが何であっても、後発サービス・プロセスB(604)のアクション・タイプが「削除」であるならば、後発サービス・プロセスB(604)は待機する、というポリシーである。ステータス制御部(605)は、後発サービス・プロセスB(604)のアクション・タイプが「削除」である場合、後発サービス・プロセスB(604)を待機させる。
5.process1(search、refer) and process2(search、refer) --> go
(先行プロセス(検索、参照)→後発プロセス(検索、参照)を実行)
該例は、先行サービス・プロセスA(602)のアクション・タイプが「検索」又は「参照」であり、後発サービス・プロセスB(604)のアクション・タイプが「検索」又は「参照」であるならば、後発サービス・プロセスB(604)は実行可能である、というポリシーである。先行及び後発の両プロセスのアクション・タイプが「検索」又は「参照」の場合、実行順番が入れ替わっても不整合は生じないので、ステータス制御部(605)は、後発プロセスが実行可能であると判定する。
6.process1(search、refer) and process2(change) --> wait
(先行プロセス(検索、参照)→後発プロセス(変更)を待機)
該例は、先行サービス・プロセスA(602)のアクション・タイプが「検索」又は「参照」であっても、後発サービス・プロセスB(604)のアクション・タイプが「変更」であるならば、後発サービス・プロセスB(604)は待機する、というポリシーである。先行サービス・プロセスA(602)のアクション・タイプが「検索」又は「参照」の場合、後発サービス・プロセスB(604)で先に変更をおこなうと不整合が生じる可能性があるので、ステータス制御部(605)は、後発サービス・プロセスB(604)が待機であると判定する。
B.サービス・プロセス(602、604)の各管理者側が実行可否を判定する場合
ステータス制御部(605)の代わりに、サービス・プロセスA及びB(602、604)の各管理者がそれぞれ実行可否を判定する。該決定は例えば、プロセス・エンジンが、サービス・プロセスAの管理者に対してサービス・プロセスA(602)の実行又は待機を指定することを許すポップアップウィンドウを表示し、該管理者から実行又は待機の入力を行わせることによって行う。同様に、プロセス・エンジンが、サービス・プロセスBの管理者に対してサービス・プロセスB(604)の実行又は待機を指定することを許すポップアップウィンドウを表示し、該管理者から実行又は待機の入力を行わせることによって行う。サービス・プロセスA及びB(602、604)の各管理者側が実行可否を判定する例は、以下の通りである。
・先行プロセス(削除)→後発プロセス(ANY)の実行必要性を判定する。
上記例は、先行サービス・プロセスA(602)のアクション・タイプが「削除」ならば、後発サービス・プロセスB(604)のアクション・タイプが何であっても、後発サービス・プロセスB(604)は実行必要性の判定を求める、という意味である。
・先行プロセス(新規)→後発プロセス(検索)で新規CIを検索対象に含めるか判定する。
上記例は、先行サービス・プロセスA(602)のアクション・タイプが「新規」であり、後発サービス・プロセスB(604)のアクション・タイプが「検索」の場合、後発のサービス・プロセス(604)は新規CIを検索対象に含めるかの判定を求める、という意味である。
なお、図6の例では、影響範囲をCIインスタンスのモデル名としたが、該影響範囲は、例えばノードとの距離を示すレベル又は関係を用いた式を使用して表してもよい。該影響範囲はまた、サービス構成要素に対応するアクションの対象範囲を特定するために使用されるポリシー(対象範囲特定ポリシー)によって動的に決定されうる。
影響範囲として、ノードとの距離を示すレベルを用いる場合において、先行のサービス・プロセス(602)の対象CI属性(601)に含まれる対象CIの影響範囲に定義されたレベル以内の構成要素であるCIと、後発のサービス・プロセス(604)の対象CI属性(603)に含まれる対象CIの影響範囲に定義されたレベル以内の構成要素が重なっていない場合、ステータス制御部(605)は、後発のサービス・プロセス(604)は実行可能であると判定する。上記影響範囲が重なっている場合、ステータス制御部(605)は、ステータス制御部(605)に定義された可否判定ポリシー(606)を使用して、後発のサービス・プロセス(604)の動作を判定する。
影響範囲として、関係を用いた式を用いる場合において、先行のサービス・プロセス(602)の対象CI属性(601)に含まれる対象CIの影響範囲に定義された関係を用いた式から求められるCIと、後発のサービス・プロセス(604)の対象CI属性(603)に含まれる対象CIの影響範囲に定義された関係を用いた式から求められるCIとが重なっていない場合は、ステータス制御部(605)は、後発のサービス・プロセス(604)は実行可能であると判定する。上記影響範囲が重なっている場合、ステータス制御部(605)は、ステータス制御部(605)に定義された可否判定ポリシー(606)を使用して、後発のサービス・プロセス(604)の動作を決定する。
【0075】
図7A〜図7Cは、本発明の実施形態における、サービス構成要素に対応するアクションの処理の流れを示す。
サービス構成要素に対応するアクションとして、サービス・プロセスA(702)及び実行中の他のサービス・プロセスがあるとする。ステータス制御部(704)は、他のサービス・プロセスの対象CI属性を保持している。対象CI属性は、対象CI属性へのアクション・タイプ及び対象CIの影響範囲である(図5、507を参照)。
サービス・プロセスA(702)の管理者は、サービス・プロセスAへのリクエスト(701)を発行する。プロセス・エンジン(図示せず)は、該リクエスト(701)を受信すると(ステップ710)、サービス・プロセスA(702)を開始する。プロセス・エンジン(図示せず)は、サービスの開始時に、サービス・プロセスA(702)内の対象CI属性をステータス制御部(704)に提供する(ステップ711)。ステータス制御部(704)は、サービス・プロセスA(702)内の対象CI属性及び実行中の他のサービス・プロセスの対象CI属性からサービス・プロセスA(702)の実行可否を判定し、プロセス・エンジンに通知する(ステップ712A)。あるいは、ステータス制御部(704)は、実行中の他のサービス・プロセスの対象CI属性をサービス・プロセスA(702)の管理者に提供し、サービス・プロセスAの実行可否を該管理者に判定させる(ステップ712B)。
【0076】
図7Bは、上記判定において、サービス・プロセスA(702)が実行可能である場合を示す。
ステータス制御部(704)が、サービス・プロセスA(702)内のCI(703)と該サービス・プロセスA(702)の対象CI(705)との間に関係(706)を作成する(ステップ713)。プロセス・エンジン(図示せず)が、サービス・プロセスA(702)を実行する(ステップ714)。上記サービス・プロセスA(702)の実行完了後、ステータス制御部(704)は、ディスカバリ部(707)に対して、CIについての情報のディスカバリを要求する。ディスカバリの対象となるCIは、ディスカバリ部(707)の管理対象である全てのCI、又は、実行を完了したサービス・プロセスAに対応するアクションの対象であるCI、又は、実行を完了したサービス・プロセスAに対応するアクションの対象であるCIと他のサービス・プロセスに対応するアクションの対象であるCIとの重複範囲に含まれるCIである。後者ほど、ディスカバリに要する時間が少なくてすむ。上記要求を受けディスカバリ部(707)は、CIの情報を取得する。属性及び関係更新部(図1A、104)は、該取得したCIの情報に基づいて、CIインスタンスの属性値又は関係値を更新する(ステップ715)。
該更新の完了は、ステータス制御部(704)に通知される。ここで、属性及び関係更新部(図1A、104)は、サービス・プロセスA(702)内のCI(703)と関係のある対象CI(705)の情報の更新及び更新完了の通知を優先して行い、サービス・プロセスA(702)内のCI(703)と関係のない対象CI(705)の情報の更新及び更新完了の通知を、後述のステップ716以降に行ってもよい。ステータス制御部(704)がサービス・プロセスA(702)内のCI(703)と対象CI(705)との間の関係(706)を削除する(ステップ716)。
ここで、さらに待ち状態のサービス・プロセス(708)があるとする。ステータス制御部(704)が、待ち状態のサービス・プロセス(708)の実行可否を判定していた場合、ステータス制御部(704)は、実行可否の再判定を行い、プロセス・エンジンに通知する。ステータス制御部(704)が、待ち状態のサービス・プロセス(708)の管理者に実行可否を判定させていた場合、待ち状態のサービス・プロセスに対応するアクションの実行可否の再判定を可能にするために、サービス・プロセスA(702)の終了をプロセス・エンジンに通知する(ステップ717)。該通知により、待ち状態のサービスプロセス(708)の管理者は、サービス・プロセスA(702)の終了を知ることができる。さらに、ステータス制御部(704)は、CI属性情報を待ち状態のサービス・プロセス(708)の管理者に提供する。
【0077】
図7Cは、上記判定において、サービス・プロセスA(702)が待機である場合を示す。
先行の他のサービス・プロセスが終了すると、ステータス制御部(704)は、サービス・プロセスA(702)の管理者に実行可否を判定させていた場合、先行の他のサービス・プロセスの終了をプロセス・エンジン(図示せず)に通知する(ステップ720)。該通知により、サービス・プロセスA(702)の管理者は、他のサービス・プロセスの終了を知ることができる。ステータス制御部(704)は、該他のサービス・プロセスについての更新された対象CI属性を用いてサービス・プロセスA(702)の実行可否を再度判定する。ここで、サービス・プロセスA(702)以外にも待機しているサービス・プロセスがある場合、ステータス制御部(704)は、待機時間の長いサービス・プロセスの順に判定を行う(ステップ721)。代替的に、ステータス制御部(704)は、対象CI属性をサービス・プロセスA(702)の管理者に提供し、プロセス・エンジンは、実行可否をサービス・プロセスA(702)の管理者に判定させうる。該判定において、サービス・プロセスA(702)が待機である場合、プロセス・エンジンは、サービス・プロセスA(702)を待機させる。ステータス制御部(704)は、他に実行中であるサービス・プロセスの完了を待つ(上記図7Bの説明を参照されたい)。該判定において、サービス・プロセスA(702)が実行可能である場合、ステータス制御部(704)が、サービス・プロセスA(702)内のCI(703)と該サービス・プロセスA(702)の対象CI(705)との間に関係(706)を作成する(ステップ722)。プロセス・エンジンが、サービス・プロセスA(702)を実行する(ステップ723)。上記サービス・プロセスA(702)の実行完了後、ステータス制御部(704)は、ディスカバリ部(707)に対してCIについての情報のディスカバリを要求する。ディスカバリの対象となるCIは、上記図7Bの説明で述べたとおりである。上記要求を受けディスカバリ部(707)は、CIの情報を取得する(ステップ724)。属性及び関係更新部(図1A、104)は、該取得したCIの情報に基づいて、CIインスタンスの属性値又は関係値を更新する(ステップ724)。
該更新の完了はステータス制御部(704)に通知される。ここで、属性及び関係更新部(図1A、104)は、サービス・プロセスA(702)内のCI(703)と関係のある対象CI(705)の情報の更新及び更新完了の通知を優先して行い、サービス・プロセスA(702)内のCI(703)と関係のない対象CI(705)の情報の更新及び更新完了の通知を、後述のステップ725以降に行ってもよい。さらに属性及び関係更新部(図1A、104)は、サービス・プロセスA(702)内のCI(703)と関係のある対象CI(705)のうち、待ち状態の他のサービス・プロセス(708)の影響範囲にも含まれるCIの情報の更新及び更新完了の通知を優先して行い、他のCIの情報の更新及び更新完了の通知を後述のステップ725以降に行ってもよい。サービス・プロセスA(702)内のCI(703)と関係のある対象CI(705)のうち、待ち状態の他のサービス・プロセス(708)の影響範囲にも含まれるCIの情報は、ステータス制御部(704)によって上記要求に設定され、ディスカバリ部(707)は、該要求から該影響範囲のCIについての情報を取得する。ステータス制御部(704)がサービス・プロセスA内のCI(703)と対象CI(705)との間の関係を削除する(ステップ725)。ステータス制御部(704)が、待ち状態のサービス・プロセス(708)の実行可否を判定していた場合、ステータス制御部(704)は、実行可否の再判定を行い、プロセス・エンジンに通知する。待ち状態のサービス・プロセス(708)の管理者に実行可否を判定させていた場合、ステータス制御部(704)が、待ち状態のサービス・プロセスに対応するアクションの実行可否の再判定を可能にするために、サービス・プロセスA(702)の終了をプロセス・エンジンに通知する(ステップ726)。該通知によって、待ち状態のサービス・プロセス(708)の管理者は、サービス・プロセスA(702)の終了を知ることができる。さらにステータス制御部(704)は、CI属性情報を待ち状態のサービス・プロセス(708)の管理者に提供する。
【0078】
図8は、本発明の実施形態における、ソフトウェアの変更・リリース管理への適用例を示す。
ハードウェア1(810)上で、オペレーティング・システムであるOS1(811)が動作している。OS1(811)上で、リレーショナルデータベース管理システム(RDBMS)(812)が動作している。リレーショナルデータベース管理システム(812)上で、データベース1(813)及びデータベース2(814)が動作している。ハードウェア2(815)上で、オペレーティング・システムであるOS2(816)が動作している。OS2(816)上で、J2EE(817)が動作している。J2EE(817)は、Java処理環境を提供するプログラム群である。J2EE(817)上で、アプリケーション1(818)及びアプリケーション2(819)が動作している。上記ハードウェア1(810)、OS1(811)、リレーショナルデータベース管理システム(812)、データベース1(813)、データベース2(814)、ハードウェア2(815)、OS2(816)、J2EE(817)、アプリケーション1(818)及びアプリケーション2(819)それぞれは、CMDB内において各CIインスタンスとして格納されている。
ハードウェア1(810)を表すCIとOS1(811)を表すCIの関係は、runsOnである。これは、ハードウェア1(810)上でOS1(811)が動作していることを表す。OS1(811)を表すCIとリレーショナルデータベース管理システム(812)を表すCIの関係は、runsOnである。これは、OS1(811)上でリレーショナルデータベース管理システム(812)が動作していることを表す。リレーショナルデータベース管理システム(812)を表すCIとデータベース1(813)を表すCIの関係は、runsOnである。これは、リレーショナルデータベース管理システム(812)上でデータベース1(813)が動作していることを表す。リレーショナルデータベース管理システム(812)を表すCIとデータベース2(814)を表すCIの関係は、runsOnである。これは、リレーショナルデータベース管理システム(812)上でデータベース2(814)が動作していることを表す。ハードウェア2(815)を表すCIとOS2(816)を表すCIの関係は、runsOnである。これは、ハードウェア2(815)上でOS2(816)が動作していることを表す。OS2(816)を表すCIとJ2EE(817)を表すCIの関係は、runsOnである。これは、OS2(816)上でJ2EE(817)が動作していることを表す。J2EE(817)を表すCIとアプリケーション1(818)を表すCIの関係は、runsOnである。これは、J2EE(817)上でアプリケーション1(818)が動作していることを表す。J2EE(817)を表すCIとアプリケーション2(818)を表すCIの関係は、runsOnである。これは、J2EE(817)上でアプリケーション2(819)が動作していることを表す。アプリケーション1(818)とデータベース2(814)の関係は、useである。これは、アプリケーション1(818)がデータベース2(814)を使用していることを表す。
【0079】
サービス・プロセスA(801)は、OS1(811)の修正を適用するプロセスである。CMDBには、サービス・プロセスA(801)自体のCIが格納されている。サービス・プロセスA(801)のCIインスタンスに、対象CI属性(802)が定義されている。対象CI属性(802)は、アクション・タイプが「変更」であり、影響範囲は「"OS1上で動いているもの(runsOn)"and"該当OS上のCIを使用しているもの(use)"」である。ここで、該当OSは、OS1である。
サービス・プロセスB(803)は、J2EEのパラメータを変更するプロセスである。CMDBには、サービス・プロセスB(803)自体のCIが格納されている。サービス・プロセスB(803)のCIインスタンスに、対象CI属性(804)が定義されている。対象CI属性(804)は、アクション・タイプが「変更」であり、影響範囲は「"J2EE上で動いているもの(runsOn)"and"該当OS上のCIを使用しているもの(use)"」である。ここで、該当OSは、OS2である。
【0080】
以下、OS1(811)への修正適用プロセスであるサービス・プロセスA(801)の実行中に、J2EEのパラメータ変更プロセスであるサービス・プロセスB(803)を実行する場合を例に説明する。ここで、ステータス制御部(805)の有する可否判定ポリシーは、先行のサービス・プロセスのアクション・タイプが「変更」であり、後続のサービス・プロセスのアクション・タイプが「変更」ならば、後続のサービス・プロセスは待機する旨であるとする。
プロセス・エンジンは、サービス・プロセスA(801)の開始時に、サービス・プロセスA(801)においてOS1(811)が修正適用の対象であることを、ステータス制御部(805)に通知する(ステップ820)。ステータス制御部(805)は、他のサービス・プロセスによりOS1(811)及びOS1(811)と関連するCIが使用されていないため、サービス・プロセスA(801)が実行可能であることをプロセス・エンジンに通知する(ステップ821)。
ステータス制御部(805)は、サービス・プロセスA(801)自体のCIとOS1(811)を表すCIとの間に関係を作成する。さらに、ステータス制御部(805)は、サービス・プロセスA(801)自体のCIに定義された影響範囲に従って、影響範囲の及ぶCIとサービス・プロセス(801)A自体のCIとの間に関係を作成する。本例では、影響範囲が「"OS1上で動いているもの(runsOn)"且つ"該当OS上のCIを使用しているもの(use)"」であるので、サービス・プロセス(801)A自体のCIは、OS1(811)上で動いているRDBMSを表すCI(812)、データベース1を表すCI(813)及びデータベース2を表すCI(814)、OS上のCIを使用しているアプリケーション1を表すCI(818)と関係を作成する(ステップ822)。
プロセス・エンジンは、サービス・プロセスB(803)の開始時に、サービス・プロセスB(803)においてJ2EEがパラメータ変更の対象であることを、ステータス制御部(805)に通知する(ステップ823)。
ここで、サービス・プロセスB(805)の影響範囲の及ぶCIであるアプリケーション1を表すCI(818)は、サービス・プロセスA(801)に使用されている。また、ステータス制御部(805)の有するポリシーに従うと、アクション・タイプが「変更」であるサービス・プロセスの対象となっているCIに対しては、同時に変更を行うことはできない。そこで、ステータス制御部(805)は、サービス・プロセスB(803)が実行不可能であることをプロセス・エンジンに通知する。ここで、ステータス制御部(805)は、サービス・プロセスB(803)の実行可否をサービス・プロセスB(803)の管理者に判定をさせることも可能である(ステップ824)。
サービス・プロセスA(801)が完了すると、ステータス制御部(805)は、ディスカバリ部(806)に環境内のCIについてディスカバリすることをリクエストし、環境内の該CIについての情報を取得する。ここで、ステータス制御部(805)は、待機中のサービス・プロセスがあれば、サービス・プロセスA(801)自体のCIと関係のあるCI(811、812、813、814、818)についての情報の取得を高い優先度で、さらには待機中のサービス・プロセスが待機する原因になっているアプリケーション1を表すCI(818)についての情報の取得をより高い優先度でリクエストする(ステップ825)。
ディスカバリの完了に伴い、ステータス制御部(805)は、サービス・プロセスA(801)とCI間の関係を削除する(ステップ826)。
ステータス制御部(805)は、プロセスが実行可能になったことをプロセス・エンジンに通知する(ステップ827)。
【0081】
図9は、本発明の実施形態における、システムの処理のフローチャートを示す。
各サービス構成要素に対応するアクションの管理者は、プロセス・エンジンに対して、サービスを実行するためのリクエストを発行する(ステップ901)。
ステータス制御部は、上記リクエストを受け、アクション・タイプ及び影響範囲をCMDBから取得する。代替的には、プロセス・エンジンが、管理者に対してアクション・タイプ及び影響範囲の入力を要求し、該要求によって入力されたアクション・タイプ及び影響範囲をステータス制御部に渡す。ステータス制御部は、サービス・プロセスの管理者から入力されたアクション・タイプ及び影響範囲をプロセス・エンジンから取得する。ステータス制御部は、サービス構成要素と該サービスのアクションの対象になる構成要素との間に関係を作成する。さらに、ステータス制御部は、上記影響範囲に従って、サービス構成要素と影響範囲の及ぶ構成要素との間に関係を作成する(ステップ902)。
ステータス制御部は、上記取得した影響範囲と実行中のサービスに対応するアクション構成要素に設定された影響範囲の重なりを判定する。該判定の結果、影響範囲に重なりがあればステップ904に進み、重なりがなければステップ905に進む(ステップ903)。
ステータス制御部は、上記取得したアクション・タイプ及び影響範囲と、実行中のサービスに対応するアクション構成要素に設定されたアクション・タイプ及び影響範囲からサービスの実行可否を判定する。該判定には、ステータス制御部に定義された可否判定ポリシーを用いる。またステータス制御部は、実行中のサービスに対応するアクション構成要素に設定されたアクション・タイプ及び影響範囲をサービスの管理者に提供し、該判定をサービスの管理者に委ねることもできる。該判定の結果、サービスが実行可能である場合、ステップ905に進み、サービスが実行不可である場合、ステップ906に進む(ステップ904)。
影響範囲に重なりがない場合又はサービスが実行可能であると判定された場合、プロセス・エンジンは、サービスを実行する(ステップ905)。サービス実行に伴い、サービス構成要素と関連する構成要素が関係付けられる。
サービスが実行不可であると判定された場合、プロセス・エンジンは、サービスを待機させる(ステップ906)。該待機は、上記実行中のサービスが終了するまで行われる。上記実行中のサービスの終了後、ステータス制御部は、ステップ903を再度実行する。
サービス終了後、ステータス制御部は、ディスカバリ部に対してディスカバリの要求を行う(ステップ907)。ディスカバリ部は、該要求を受け、環境内又は要求されたCIの情報を取得する。次に、属性及び関係更新部が、該取得したCIの情報に基づいて、CIインスタンスの属性値又は関係値を更新する。属性及び関係更新部は、該更新が完了すると完了をステータス制御部に通知する。
ステータス制御部は、該通知を受け、サービス構成要素と関連する構成要素の関係を解除する(ステップ908)。
ステータス制御部は、待機中のサービスがあればサービスが終了したことをプロセス・エンジンに通知する(ステップ909)。
【0082】
図10は、本発明の実施形態における、コンピュータ・システムの例を示す。
コンピュータ・システム(1000)は、図1Aで示されるコンピュータ・システム(100)と同様に、ディスカバリ部(1001)、CI同定部(1002)、CIインスタンス作成部(1003)、属性及び関係更新部(1004)及びCMDB(1005)を含む。コンピュータ・システム(1000)はさらに、ディスカバリ・テーブル(1006)、モデル・テーブル(1007)及び関係テーブル(1008)を含む。
ステータス制御部(1009)は、関連付部(1011)、判定部(1012)、提示部(1013)を含む。
関連付部(1011)は、サービス構成要素を、該サービス構成要素に対応するアクションの対象である1又は複数の構成要素に関連付ける。
判定部(1012)は、第1のサービス構成要素に対応するアクションの実行中に第2のサービス構成要素に対応するアクションへのリクエストがあり且つ該第1のサービス構成要素に対応するアクションの対象である少なくとも1の構成要素が該第2のサービス構成要素に対応するアクションの対象である構成要素に含まれる場合、該第2のサービス構成要素に対応するアクションを実行することが許されるかどうかを判定する。該判定部(1012)はまた、サービス構成要素に対応するアクションを実行することが許されるかどうかを判定するためのルールを定義するポリシーによってサービス構成要素に対応するアクションを実行することが許されるかどうかを判定する。
提示部(1013)は、サービス構成要素に対応するアクションの実行可否をユーザに選択することを許すインタフェースを表示部に提示する。
プロセス・エンジン(1010)は、サービス・プロセス又はサービス・ステップの実行をする。プロセス・エンジン(1010)は、サービス・プロセスの対象先となるCIをポイントするパラメータをサービス・プロセス内に定義する。
ステータス制御部(1009)及び/又はプロセス・エンジン(1010)は、コンピュータ・システム(1000)内に含まれていてもよく、又はコンピュータ・システム(1000)にケーブルを介して接続されたコンピュータ・システム(図示せず)内に含まれていてもよい。
【0083】
上記実施形態のコンピュータ・システムにおいて使用されるコンピュータは、CPUとメイン・メモリと含み、これらはバスに接続されている。CPUは好ましくは、32ビット又は64ビットのアーキテクチャに基づくものであり、例えば、インテル社のXeon(商標)シリーズ、Core(商標)シリーズ、Pentium(商標)シリーズ、Celeron(商標)シリーズ、AMD社のPhenom(商標)シリーズ、Athlon(商標)シリーズなどを使用することができる。バスには、ディスプレイ・コントローラを介して、LCDモニタなどのディスプレイが接続される。ディスプレイは、コンピュータ・システムの管理のために、通信回線を介してネットワークに接続されたコンピュータについての情報と、そのコンピュータ上で動作中のソフトウェアについての情報を、適当なグラフィック・インターフェースで表示するために使用される。バスにはまた、IDE又はSATAコントローラを介して、ハードディスク又はシリコン・ディスクと、CD−ROM、DVD又はBlu−rayドライブが接続される。
【0084】
ハードディスクには、オペレーティング・システム、J2EEなどのJava処理環境を提供するプログラム、CMDBのための運用管理プログラム、その他のプログラム及びデータが、メイン・メモリにロード可能に記憶されている。運用管理プログラムは好ましくは、インターナショナル・ビジネス・マシーンズ・コーポレーションから提供されるTADDM(Tivoli(商標)Application Dependency Discovery Manager)を含む。
【0085】
CD−ROM、DVD又はBDドライブは、必要に応じて、CD−ROM、DVD−ROM又はBDからプログラムをハードディスクに追加導入するために使用される。バスには更に、キーボード・マウスコントローラを介して、キーボード及びマウスが接続されている。
【0086】
通信インタフェースは、例えばイーサネット(商標)・プロトコルに従うものであり、通信コントローラを介してバスに接続され、コンピュータ及び通信回線を物理的に接続する役割を担い、コンピュータのオペレーティング・システムの通信機能のTCP/IP通信プロトコルに対して、ネットワーク・インターフェース層を提供する。尚、通信回線は、有線LAN環境、或いは例えばIEEE802.11a/b/g/nなどの無線LAN接続規格に基づく無線LAN環境であってもよい。
【0087】
なお、コンピュータ等のハードウェアを接続するためのネットワーク接続装置として使用できるものとして、上記のネットワーク・スイッチ以外に、これで尽きている訳ではないが、ルータ、ハードウェア管理コンソール等がある。要するに、ネットワーク運用管理用プログラムが導入されているコンピュータからの、所定のコマンドによる問い合わせに対して、それに接続されているコンピュータのIPアドレス、MACアドレスなどの構成情報を返すことができる機能をもつものである。ネットワーク・スイッチ及びルータは、アドレス解決プロトコル(ARP)のための、それに接続されているコンピュータのIPアドレス及び、それに対応するMACアドレスの対のリストを含むARPテーブルを含み、所定のコマンドによる問い合わせに対して、ARPテーブルの内容を返す機能をもつ。ハードウェア管理コンソールは、ARPテーブルよりも更に詳しい、コンピュータの構成情報を返すことができる。
【0088】
コンピュータには、上述したハードウェア管理コンソールが接続されている。これは、コンピュータで、LPAR(仮想論理区画)により一台のコンピュータを複数の区画に論理分割し、その各々の区画で、VMwareにより、Windows(商標)、Linux(商標)などの異なるOSを走らせるようにする機能を有するものである。ハードウェア管理コンソールにシステム的に問い合わせすることにより、LPAR・VMwareで動作しているコンピュータの個々の論理区画での情報を、詳細に得ることができる。
【0089】
以上、実施形態に基づき本発明を説明してきたが、本実施形態に記載されている内容は、本発明の一例であり、当業者なら、本発明の技術的範囲を逸脱することなく、さまざまな変形例に想到できることが、明らかであろう。例えば、CMDBとそれに格納されたCIではなく、別の形式のデータベースとCIの形式を用いることもできる。また、Java以外に、C++、C#など、ネットワーク管理機能をもつAPIを呼び出すことのできる任意のコンピュータ開発環境を用いることができる。
【図面の簡単な説明】
【0090】
【図1A】CIを管理するための、CMDBを含む従来のコンピュータ・システムの例を示す。
【図1B】構成管理のためのツールの概要を示す。
【図2A】サービスA及びサービスBの各CIインスタンス、及びそれらサービスの関係インスタンスの作成を示す。
【図2B】データ・モデル、ディスカバリ・インスタンス、CIインスタンス、及び関係モデルを示す。
【図3A】本発明の実施形態におけるサービス構成要素の例を示す。
【図3B】本発明の実施形態における、サービス構成要素の組み合わせの例を示す。
【図3C】本発明の実施形態における、データ・モデル、ディスカバリ・インスタンス、CIインスタンス、及び関係モデルを示す。
【図3D】本発明の実施態様である、対象範囲特定ポリシーを説明するために使用する、構成要素及び該構成要素間の関係を示す。
【図3E】本発明の実施態様である、対象範囲特定ポリシーAを用いた例を示す。
【図3F】本発明の実施態様である、対象範囲特定ポリシーBを用いた例を示す。
【図3G】本発明の実施態様である、対象範囲特定ポリシーCを用いた例を示す。
【図3H】本発明の実施態様である、対象範囲特定ポリシーDを用いた例を示す。
【図4】従来のサービス・プロセス処理の例を示す。
【図5】本発明の実施形態における、サービス構成要素に対応するアクションの実行管理の概略を示す。
【図6】本発明の実施形態における、サービス・プロセスの実行可否を決定する流れを示す。
【図7A】本発明の実施形態における、サービス構成要素に対応するアクションの処理の流れ(1/3)を示す。
【図7B】本発明の実施形態における、サービス構成要素に対応するアクションの処理の流れ(2/3)を示す。
【図7C】本発明の実施形態における、サービス構成要素に対応するアクションの処理の流れ(3/3)を示す。
【図8】本発明の実施形態における、ソフトウェアの変更・リリース管理への適用例を示す。
【図9】本発明の実施形態における、システムの処理のフローチャートを示す。
【図10】本発明の実施形態における、コンピュータ・システムの例を示す。

【特許請求の範囲】
【請求項1】
サービス構成要素に対応するアクションの実行を管理するためのコンピュータ・システムであって、
構成要素についての情報を検出するディスカバリ部と、
構成要素毎に、該構成要素の少なくとも1つの所定の属性及び該構成要素と他の構成要素との関係を示す1組のデータを保持するリポジトリと、
前記サービス構成要素を、該サービス構成要素に対応するアクションの対象である少なくとも1の構成要素に関連付ける関連付部と、
第1のサービス構成要素に対応するアクションの実行中に第2のサービス構成要素に対応するアクションへのリクエストがあり且つ該第2のサービス構成要素に対応するアクションの対象である少なくとも1の構成要素が該第1のサービス構成要素に対応するアクションの対象である構成要素に含まれる場合、該第2のサービス構成要素に対応するアクションを実行することが許されるかどうかを判定する判定部と
を含む、前記コンピュータ・システム。
【請求項2】
前記ディスカバリ部が、前記第1又は第2のサービス構成要素に対応するアクションの終了後に、構成要素についての情報を検出する、請求項1に記載のコンピュータ・システム。
【請求項3】
前記ディスカバリ部が、前記第1又は第2のサービス構成要素に対応するアクションの終了後に、該終了したサービス構成要素に対応するアクションの対象である構成要素についての情報を検出する、請求項2に記載のコンピュータ・システム。
【請求項4】
前記ディスカバリ部が、前記第1又は第2のサービス構成要素に対応するアクションの終了後に、前記第1のサービス構成要素に対応するアクションの対象である少なくとも1の構成要素と前記第2のサービス構成要素に対応するアクションの対象である構成要素との重複範囲に含まれる構成要素についての情報を検出する、請求項3に記載のコンピュータ・システム。
【請求項5】
前記サービス構成要素が、少なくとも1のサービス・プロセス又は該サービス・プロセスに含まれる少なくとも1のサービス・ステップである、請求項1に記載のコンピュータ・システム。
【請求項6】
前記判定部が、前記サービス構成要素に対応するアクションを実行することが許されるかどうかを判定するためのルールを定義するポリシーによって前記アクションを実行することが許されるかどうかを判定する、請求項1に記載のコンピュータ・システム。
【請求項7】
前記アクションを実行することが許されるかどうかを判定することをユーザに選択することを可能にするインタフェースを表示部に提示する提示部をさらに含む、請求項1に記載のコンピュータ・システム。
【請求項8】
前記判定部が、前記アクションを実行することが許される場合、前記第2のサービス構成要素に対応するアクションを実行させ、前記判定部が、前記アクションを実行することが許されない場合、前記第2のサービス構成要素に対応するアクションの実行を待機させる、請求項1に記載のコンピュータ・システム。
【請求項9】
前記第2のサービス構成要素に対応するアクションの実行が待機している場合、前記判定部が、前記第1のサービス構成要素に対応するアクションの終了に応じて、前記第2のサービス構成要素に対応するアクションを実行することが許されるかどうかをさらに判定する、請求項8に記載のコンピュータ・システム。
【請求項10】
前記判定部が、前記第1のサービス構成要素に対応するアクションの対象である構成要素が前記第2のサービス構成要素に対応するアクションの対象である構成要素と重複しない場合、前記第2のサービス構成要素に対応するアクションを実行することを許す、請求項1に記載のコンピュータ・システム。
【請求項11】
前記関連付けが、前記第1のサービス構成要素に対応するアクションの開始に応じて行われる、請求項1に記載のコンピュータ・システム。
【請求項12】
前記関連付部が、前記第1のサービス構成要素に対応するアクションの終了に応じて、前記関連付けを解除する、請求項11に記載のコンピュータ・システム。
【請求項13】
所定の属性及び構成要素と他の構成要素との関係を定義するデータ・モデルが、サービス構成要素のアクション・タイプと該サービス構成要素に対応するアクションの対象である構成要素の範囲とを含む、請求項1に記載のコンピュータ・システム。
【請求項14】
サービス構成要素に対応するアクションの実行を管理する方法であって、
構成要素についての情報を検出するステップと、
前記検出された情報に基づいて、構成要素毎に、該構成要素の少なくとも1つの所定の属性及び該構成要素と他の構成要素との関係を示す1組のデータを作成し、該1組のデータをリポジトリに格納するステップと、
前記サービス構成要素を、該サービス構成要素に対応するアクションの対象である少なくとも1の構成要素に関連付けるステップと、
第1のサービス構成要素に対応するアクションの実行中に第2のサービス構成要素に対応するアクションへのリクエストがあり且つ該第2のサービス構成要素に対応するアクションの対象である少なくとも1の構成要素が該第1のサービス構成要素に対応するアクションの対象である構成要素に含まれる場合、該第2のサービス構成要素に対応するアクションを実行することが許されるかどうかを判定するステップと
を含む、前記方法。
【請求項15】
前記第1又は第2のサービス構成要素に対応するアクションの終了後に、構成要素についての情報を検出するステップをさらに含む、請求項14に記載の方法。
【請求項16】
前記第1又は第2のサービス構成要素に対応するアクションの終了後に、該終了したサービス構成要素に対応するアクションの対象である構成要素についての情報を検出するステップをさらに含む、請求項15に記載の方法。
【請求項17】
前記第1又は第2のサービス構成要素に対応するアクションの終了後に、前記第1のサービス構成要素に対応するアクションの対象である少なくとも1の構成要素と前記第2のサービス構成要素に対応するアクションの対象である構成要素との重複範囲に含まれる構成要素についての情報を検出するステップをさらに含む、請求項16に記載の方法。
【請求項18】
前記判定するステップが、前記サービス構成要素に対応するアクションを実行することが許されるかどうかを判定するためのルールを定義するポリシーによって前記アクションを実行することが許されるかどうかを判定するステップを含む、請求項14に記載の方法。
【請求項19】
前記アクションを実行することが許される場合、前記第2のサービス構成要素に対応するアクションを実行すること許すステップと、
前記アクションを実行することが許されない場合、前記第2のサービス構成要素に対応するアクションの実行を待機させるステップと
をさらに含む、請求項14に記載の方法。
【請求項20】
前記第1のサービス構成要素に対応するアクションの対象である構成要素が前記第2のサービス構成要素に対応するアクションの対象である構成要素と重複しない場合、前記第2のサービス構成要素に対応するアクションを実行することを許すステップをさらに含む、請求項14に記載の方法。
【請求項21】
前記関連付けるステップが、前記第1のサービス構成要素に対応するアクションの開始に応じて行われる、請求項14に記載の方法。
【請求項22】
前記第1のサービス構成要素に対応するアクションの終了に応じて、前記関連付けを解除するステップをさらに含む、請求項21に記載の方法。
【請求項23】
前記第2のサービス構成要素に対応するアクションの実行が待機している場合、前記第1のサービス構成要素に対応するアクションの終了に応じて、前記第2のサービス構成要素に対応するアクションを実行することが許されるかどうかをさらに判定するステップをさらに含む、請求項14に記載の方法。
【請求項24】
構成要素についての情報を検出するディスカバリ部と、構成要素毎に、該構成要素の少なくとも1つの所定の属性及び該構成要素と他の構成要素との関係を示す1組のデータを保持するリポジトリとを含むコンピュータ・システムにおいて、サービス構成要素に対応するアクションの実行を管理する方法であって、
前記サービス構成要素を、該サービス構成要素に対応するアクションの対象である少なくとも1の構成要素に関連付けるステップと、
第1のサービス構成要素に対応するアクションの実行中に第2のサービス構成要素に対応するアクションへのリクエストがあり且つ該第2のサービス構成要素に対応するアクションの対象である少なくとも1の構成要素が該第1のサービス構成要素に対応するアクションの対象である構成要素に含まれる場合、
該第2のサービス構成要素に対応するアクションを実行することが許されるかどうかを判定するステップと、
前記アクションを実行することが許される場合、前記第2のサービス構成要素に対応するアクションを実行させるステップと、
前記アクションを実行することが許されない場合、前記第2のサービス構成要素に対応するアクションの実行を待機させるステップと、
前記第1のサービス構成要素に対応するアクションの対象である構成要素が前記第2のサービス構成要素に対応するアクションの対象である構成要素と重複しない場合、前記第2のサービス構成要素に対応するアクションを実行することを許すステップと、
前記第1又は第2のサービス構成要素に対応するアクションの終了後に、構成要素についての情報を検出するステップと
を含む、前記方法。
【請求項25】
サービス構成要素に対応するアクションの実行を管理するコンピュータ・プログラムであって、コンピュータ・システムに、請求項14〜24のいずれか一項に記載の方法の各ステップを実行させるコンピュータ・プログラム。

【図1A】
image rotate

【図1B】
image rotate

【図2A】
image rotate

【図2B】
image rotate

【図3A】
image rotate

【図3B】
image rotate

【図3C】
image rotate

【図3D】
image rotate

【図3E】
image rotate

【図3F】
image rotate

【図3G】
image rotate

【図3H】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7A】
image rotate

【図7B】
image rotate

【図7C】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2010−55211(P2010−55211A)
【公開日】平成22年3月11日(2010.3.11)
【国際特許分類】
【出願番号】特願2008−217234(P2008−217234)
【出願日】平成20年8月26日(2008.8.26)
【出願人】(390009531)インターナショナル・ビジネス・マシーンズ・コーポレーション (4,084)
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MASCHINES CORPORATION
【復代理人】
【識別番号】100085545
【弁理士】
【氏名又は名称】松井 光夫
【復代理人】
【識別番号】100118599
【弁理士】
【氏名又は名称】村上 博司
【Fターム(参考)】