(57)【要約】【課題】情報システムにおいて発生しうる障害および該障害に対する管理作業を分析できるようにする。【解決手段】分析の対象とする情報システムについて、該情報システムが正常であるときに満たすべき制約を表す制約情報を取得し、自動的な遷移のみを行う状態遷移モデルにおいて制約を満たさない異常状態を特定する。また、手動的な遷移のみを行う状態遷移モデルにおいて異常状態から正常状態への遷移の探索を行い、これにより探索された手動的な遷移によって特定される管理作業を異常状態に関連付けて表す管理作業情報を出力する。【選択図】図４
2008310683.tif 000002
【特許請求の範囲】
【請求項１】
分析の対象とする情報システムについて、状態識別子によって識別される複数の状態を表す状態情報と、前記複数の状態間の遷移を表す状態間遷移情報と該遷移が自動的な遷移であるか手動的な遷移であるかを表す分類情報とを含む遷移情報と、を記憶する記憶部と、
前記情報システムが正常であるときに満たすべき制約を表す制約情報を取得し、取得した制約情報と前記遷移情報とに基づいて前記制約を満たさない前記情報システムの異常状態を特定する異常状態分析部と、
前記異常状態分析部で特定された異常状態から正常状態への遷移の探索を前記状態情報および前記遷移情報に基づいて行い、探索結果を参照して管理作業を作成し、作成した管理作業を前記異常状態に関連付けて表す管理作業情報を出力する管理作業分析部と、を具備するシステム分析装置。
【請求項２】
前記異常状態分析部は、自動的な遷移のみを行う状態遷移を表す自動系状態遷移モデルを生成し、前記自動系状態遷移モデルが有する複数の状態を、前記制約を満たす正常状態と前記制約を満たさない異常状態とに分類して表す状態分類情報を出力する請求項１記載のシステム分析装置。
【請求項３】
前記管理状態分析部は、手動的な遷移のみを行う状態遷移を表す手動系状態遷移モデルを生成し、該手動系状態遷移モデルを対象にして前記異常状態から正常状態への遷移の探索を行う請求項１記載のシステム分析装置。
【請求項４】
分析の対象とする情報システムの第１のモジュールおよび第２のモジュールのそれぞれについて、状態識別子によって識別される複数の状態を表す状態情報と、前記複数の状態間の遷移を表す状態間遷移情報と該遷移が自動的な遷移であるか手動的な遷移であるかを表す分類情報とを含む遷移情報と、を記憶する記憶部と、
前記第１のモジュールにおいて自動的な遷移のみを行う状態遷移と前記第２のモジュールにおいて自動的な遷移のみを行う状態遷移とを合成することにより自動系状態遷移モデルを生成する第１の合成部と、
前記情報システムが正常であるときに満たすべき制約を表す制約情報を取得し、前記自動系状態遷移モデルにおいて、前記制約を満たさない異常状態を特定する異常状態分析部と、
前記第１のモジュールにおいて手動的な遷移のみを行う状態遷移と前記第２のモジュールにおいて手動的な遷移のみを行う状態遷移とを合成することにより手動系状態遷移モデルを生成する第２の合成部と、
前記手動系状態遷移モデルにおいて、前記異常状態分析部で特定された異常状態から正常状態への遷移の探索を行い、探索結果を参照して管理作業を作成し、作成した管理作業を前記異常状態に関連付けて表す管理作業情報を出力する管理作業分析部と、を具備するシステム分析装置。
【請求項５】
前記異常状態分析部は、前記自動系状態遷移モデルが有する複数の状態を、前記制約を満たす正常状態と前記制約を満たさない異常状態とに分類して表す状態分類情報を出力する請求項４記載のシステム分析装置。
【請求項６】
前記管理状態分析部は、前記手動系状態遷移モデルを対象にして前記異常状態から正常状態への遷移の探索を行う請求項４記載のシステム分析装置。
【請求項７】
分析の対象とする情報システムについて、状態識別子によって識別される複数の状態を表す状態情報と、前記複数の状態間の遷移を表す状態間遷移情報と該遷移が自動的な遷移であるか手動的な遷移であるかを表す分類情報とを含む遷移情報と、を記憶部が記憶するステップと、
前記情報システムが正常であるときに満たすべき制約を表す制約情報を異常状態分析部が取得し、取得した制約情報と前記遷移情報とに基づいて前記制約を満たさない前記情報システムの異常状態を特定するステップと、
管理作業分析部が、前記異常状態分析部で特定された前記異常状態から正常状態への遷移の探索を前記状態情報および前記遷移情報に基づいて行い、探索結果を参照して管理作業を作成し、作成した管理作業を前記異常状態に関連付けて表す管理作業情報を出力するステップと、を具備するシステム分析方法。
【請求項８】
前記異常状態分析部は、自動的な遷移のみを行う状態遷移を表す自動系状態遷移モデルを生成し、前記自動系状態遷移モデルが有する複数の状態を、前記制約を満たす正常状態と前記制約を満たさない異常状態とに分類して表す状態分類情報を出力する請求項７記載のシステム分析方法。
【請求項９】
前記管理状態分析部は、手動的な遷移のみを行う状態遷移を表す手動系状態遷移モデルを生成し、該手動系状態遷移モデルを対象にして前記異常状態から正常状態への遷移の探索を行う請求項７記載のシステム分析方法。
【請求項１０】
分析の対象とする情報システムの第１のモジュールおよび第２のモジュールのそれぞれについて、状態識別子によって識別される複数の状態を表す状態情報と、前記複数の状態間の遷移を表す状態間遷移情報と該遷移が自動的な遷移であるか手動的な遷移であるかを表す分類情報とを含む遷移情報を記憶部が記憶するステップと、
前記第１のモジュールにおいて自動的な遷移のみを行う状態遷移と前記第２のモジュールにおいて自動的な遷移のみを行う状態遷移とを第１の合成部が合成することにより自動系状態遷移モデルを生成するステップと、
前記情報システムが正常であるときに満たすべき制約を表す制約情報を異常状態分析部が取得し、前記自動系状態遷移モデルにおいて、前記制約を満たさない異常状態を特定するステップと、
前記第１のモジュールにおいて手動的な遷移のみを行う状態遷移と前記第２のモジュールにおいて手動的な遷移のみを行う状態遷移とを第２の合成部が合成することにより手動系状態遷移モデルを生成するステップと、
前記手動系状態遷移モデルにおいて、管理作業分析部が前記異常状態分析部で特定された異常状態から正常状態への遷移の探索を行い、検索結果を参照して管理作業を作成し、作成した管理作業を前記異常状態に関連付けて表す管理作業情報を出力するステップと、を具備するシステム分析方法。
【請求項１１】
前記異常状態分析部は、前記自動系状態遷移モデルが有する複数の状態を、前記制約を満たす正常状態と前記制約を満たさない異常状態とに分類して表す状態分類情報を出力する請求項４記載のシステム分析方法。
【請求項１２】
前記管理状態分析部は、前記手動系状態遷移モデルを対象にして前記異常状態から正常状態への遷移の探索を行う請求項４記載のシステム分析方法。
【請求項１３】
コンピュータを、
分析の対象とする情報システムについて、状態識別子によって識別される複数の状態を表す状態情報と、前記複数の状態間の遷移を表す状態間遷移情報と該遷移が自動的な遷移であるか手動的な遷移であるかを表す分類情報とを含む遷移情報と、を記憶する記憶手段、
前記情報システムが正常であるときに満たすべき制約を表す制約情報を取得し、、取得した制約情報と前記遷移情報とに基づいて前記制約を満たさない前記情報システムの異常状態を特定する異常状態分析手段、
前記異常状態分析手段で特定された異常状態から正常状態への遷移の探索を前記状態情報および前記遷移情報に基づいて行い、探索結果を参照して管理作業を作成し、作成した管理作業を前記異常状態に関連付けて表す管理作業情報を出力する管理作業分析手段、として機能させるためのプログラム。
【請求項１４】
コンピュータを、
分析の対象とする情報システムの第１のモジュールおよび第２のモジュールのそれぞれについて、状態識別子によって識別される複数の状態を表す状態情報と、前記複数の状態間の遷移を表す状態間遷移情報と該遷移が自動的な遷移であるか手動的な遷移であるかを表す分類情報とを含む遷移情報と、を記憶する記憶手段、
前記第１のモジュールにおいて自動的な遷移のみを行う状態遷移と前記第２のモジュールにおいて自動的な遷移のみを行う状態遷移とを合成することにより自動系状態遷移モデルを生成する手段、
前記情報システムが正常であるときに満たすべき制約を表す制約情報を取得し、前記自動系状態遷移モデルにおいて、前記制約を満たさない異常状態を特定する異常状態分析手段、
前記第１のモジュールにおいて手動的な遷移のみを行う状態遷移と前記第２のモジュールにおいて手動的な遷移のみを行う状態遷移とを合成することにより手動系状態遷移モデルを生成する手段、
前記手動系状態遷移モデルにおいて、前記異常状態分析手段で特定された異常状態から正常状態への遷移の探索を行い、探索結果を参照して管理作業を作成し、作成した管理作業を前記異常状態に関連付けて表す管理作業情報を出力する管理作業分析手段、として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報システムにおいて発生しうる障害、および障害が発生した際の管理作業を分析するための装置、方法、およびプログラムに関する。
【背景技術】
【０００２】
近年、情報システムが複雑化するとともに、情報システムの管理コストの増加が問題となっている。そこで、情報システム自身に情報システムを管理させることによって情報システムの管理コストを削減することを狙いとした自己管理システムに関する研究が行われている（例えば、「非特許文献１」を参照）。
【０００３】
自己管理システムは、障害の検知方法や修復方法などに関する情報（以下、「運用知識」と呼ぶ）に基づいて、障害対応などの管理作業の自動化を実現する。運用知識は、自己管理システム内に配置されており、その保守管理が必要である。例えば、対象システムの構成に変更があった場合や、初期の運用知識には含まれていない障害の対処方法が明らかになった場合などに、運用知識は修正される必要がある。
【０００４】
運用知識を自己管理システムでどのように保守管理するかについては、分散管理型自己修復技術が考案されている（例えば、「特許文献１」、「非特許文献２」を参照）。この技術において、運用知識は、情報システムの構成要素であるコンポーネント毎に、特定のシステム構成や他のコンポーネントに依存しない形式で表現される。これにより各コンポーネントの運用知識のモジュール性が向上し、その保守が容易となる。
【特許文献１】特開２００７−１２８１８５号公報
【非特許文献１】「オートノミックコンピューティングとは何か」，ソフトバンクパブリッシング，ＩＳＢＮ：４７９７３３０３７６
【非特許文献２】A self-healing technique based on encapsulated operation knowledge, Proceedings of the 3rd IEEE International Conference on Autonomic Computing (ICAC’06),Jun. 2006
【非特許文献３】Concurrency State Models & Java（登録商標） Programming, Jeff Magee and Jeff Kramer, John Wiley & Sons Inc.
【発明の開示】
【発明が解決しようとする課題】
【０００５】
分散管理型自己修復技術を用いたシステム（以下、「分散管理型自己修復システム」）は、コンポーネント毎の運用知識を組み合わせることによって構築され、自己修復動作を行う。しかしながら、コンポーネント毎の運用知識は互いに独立して別々に管理されており、運用知識に変更が生じることがある。この場合、そのような運用知識を組み合わせて分散管理型自己修復システムが構築された場合の自己修復動作を把握することができない。すなわち、分散管理型自己修復システムには、自己修復動作の正当性の検証ができないために、高い信頼性が要求されるシステムには適用できないという問題がある。
【０００６】
自己修復動作が正当であることを検証するためには、対象とする情報システムで発生しうる障害を把握し、それぞれの障害に対して適切な管理作業が関連付けられていることを確認する必要がある。すなわち、対象情報システムにおける障害および障害に対処する管理作業の分析が必要となる。
【０００７】
情報システムにおいて発生しうる障害を分析する方法として、状態遷移モデルに基づく分析方法を応用することが考えられる（例えば、「非特許文献３」を参照）。
【０００８】
しかし、従来の状態遷移モデルに基づくシステム分析方法では、情報システムの機能が実行されることなどによって起こる自動的な遷移と、システム管理者等が行う人為的な操作によって起こる手動的な遷移とが区別されていないために、障害と、その障害に対して必要となる管理作業との関係が明確でないという問題点がある。
【０００９】
また、様々な処理および手動の操作が可能な情報システムでは、分析すべき状態遷移モデルが大規模で複雑なものとなるため、障害の分析に要する時間や記憶装置の容量などのコストが大きくなる場合もある。
【００１０】
本発明は、このような問題に鑑みてなされたものであり、情報システムにおいて発生しうる障害および該障害に対する管理作業を分析するための装置、方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の一観点に係るシステム分析装置は、分析の対象とする情報システムについて、状態識別子によって識別される複数の状態を表す状態情報と、前記複数の状態間の遷移を表す状態間遷移情報と該遷移が自動的な遷移であるか手動的な遷移であるかを表す分類情報とを含む遷移情報と、を記憶する記憶部と、前記情報システムが正常であるときに満たすべき制約を表す制約情報を取得し、取得した制約情報と前記遷移情報とに基づいて前記制約を満たさない前記情報システムの異常状態を特定する異常状態分析部と、前記異常状態分析部で特定された異常状態から正常状態への遷移の探索を前記状態情報および前記遷移情報に基づいて行い、探索結果を参照して管理作業を作成し、作成した管理作業を前記異常状態に関連付けて表す管理作業情報を出力する管理作業分析部と、を具備する。
【発明の効果】
【００１２】
本発明によれば、情報システムにおいて発生しうる障害および該障害に対する管理作業を分析するための装置、方法、およびプログラムを提供できる。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照しながら本発明の実施形態を説明する。
【００１４】
まず、図１および図２を用いて、本実施形態に係る情報システム分析装置が分析の対象とする情報システムについて説明する。
【００１５】
図１は、２台の計算機、計算機１００と計算機２００からなる情報システムである。計算機１００は、ＣＰＵ１０１と主記憶装置１０２を備え、計算機２００も同様にＣＰＵ２０１と主記憶装置２０２を備える。計算機１００の主記憶装置１０２にはクライアントモジュール１０３が配置され、計算機２００の主記憶装置２０２にはサーバモジュール２０３が配置されている。クライアントモジュール１０３は、コネクションプーリングの機能を持つものとする。コネクションプーリングとは、通信を行うプログラム（モジュール）において、通信先との間に確立したネットワーク接続（コネクション）を記憶装置上に保持し、複数の処理で使い回すことを可能とする機能である。複数の処理でコネクションを使い回すことにより、コネクション初期化処理を行う回数を削減することによる処理全体の高速化を図ることができる。
【００１６】
図１においては、クライアントモジュールと計算機２００上に配置されたサーバモジュール間のコネクション１０５が、計算機１００の主記憶装置１０２上に形成されたコネクションプール１０４に保持されている。ここで、計算機１００のコネクションプール１０４上に保持されたコネクション１０５が有効であるためには、計算機２００上に配置されたサーバモジュール２０３が稼働し続けることが必要である。
【００１７】
図２は、図１に示した状態でサーバモジュール２０３が停止した後の情報システムの状態を示したものである。計算機１００上に保持されたコネクション１０６の通信先であるサーバモジュールは計算機２００上の主記憶装置２０２に存在していない。したがって、計算機１００上に保持されたコネクション１０６は無効である。また、図２に示した状態においてサーバモジュールを再起動したとしても、コネクション１０６は無効のままである。
【００１８】
この図２のように、無効なコネクション１０６が保持されている状態でクライアントモジュール１０３がサーバモジュールとの通信を必要とする処理を行おうとした場合、保持された無効なコネクション１０６を利用してしまうため、正常に処理が完了できない。すなわち、図２に示す状態は、本実施形態に係る情報システム分析装置が分析対象とする、情報システムにおける異常状態（障害）の一つである。
【００１９】
図２に示す異常状態から正常な状態、すわなち、クライアントモジュール１０３の処理が正常に完了できる状態に遷移するためには以下の管理作業が必要である。
【００２０】
（１）計算機２００上のサーバモジュール２０３を再起動する。
【００２１】
（２）計算機１００上に保持された無効なコネクション１０６を消去する。
【００２２】
図３に、図１に示したシステムに分散管理型自己修復技術を適用した際の構成を示す。
【００２３】
要求部３０は、クライアントモジュール１０３において実行されている処理に対応付けられている制約情報を制約情報ＤＢ４０において検索する。そして、制約情報に基づいて、クライアントモジュール１０３の処理が依存する計算機、すなわち対象計算機（ここでは計算機２００）を特定する。さらに、制約情報に基づいて、クライアント１０３の処理を進めるために必要な対象計算機の状態を特定する。
【００２４】
一方、管理装置２２０２内の受信部３１は、ネットワークを介して外部から遷移指示を受信する。遷移指示とは、所定の機能を所定の状態にする旨を示す情報である。例えば、サーバモジュール２０３を起動状態にする旨の情報などである。また、受信部３１は、具体的には、当該計算機２００に依存する計算機１００から受信する。
【００２５】
操作対象判定部３６は、受信部３１が受信した遷移指示に示される機能を特定する。この際、構成情報４１に格納されている情報を参照する。構成情報４１には、機能情報が格納されている。機能情報とは、計算機２００にインストールされているサーバモジュール２０３とサーバモジュール２０３によって実現される機能とを関連付ける情報である。
【００２６】
状態判定部３５は、操作対象判定部３６により特定された機能に対応する現在の状態を特定する。この際、操作情報２２０４に格納されている情報を参照する。操作情報２２０４には、各機能の状態情報が格納されている。ここで、状態情報とは、例えば、待機状態、起動状態など各機能における処理状態を示す情報である。さらに、各機能の現在の状態を示す情報も保持されている。
【００２７】
操作判定部３４は、状態判定部３５により特定された現在状態から遷移指示に示される状態に遷移するための処理を特定する。この際、操作情報２２０４に格納されている情報を参照する。操作実行部３３は、操作判定部３４により特定された処理を実行し、遷移指示に示される機能を、遷移指示に示される状態に遷移させる。
【００２８】
送信部３２は、操作実行部３３の処理が完了した場合に、遷移指示に示される状態への遷移が完了した旨を示す完了通知を、遷移指示の送信元に送信する。
【００２９】
計算機１００の分散管理型自己修復システム（管理装置）２２０１についても、上記計算機２００の分散管理型自己修復システム（管理装置）２２０２と同様に構成されている。
【００３０】
分散管理型自己修復システム２２０１，２２０２は、操作情報２２０３，２２０４に基づいて自己修復を実現する。そこで、分散管理型自己修復システム２２０１，２２０２における自己修復動作が適切なものであるためには、障害とそれに対する管理作業とが操作情報２２０３，２２０４に適切に記述されている必要がある。
【００３１】
そして、操作情報２２０３，２２０４の適切さを確認するには、以下の２点が必要である。
【００３２】
（ａ）図１のシステムで発生しうる障害と該障害に対する管理作業とが明確であること。
【００３３】
（ｂ）（ａ）の障害を検出するための方法、および（ａ）の管理作業が操作情報２２０３，２２０４に含まれていること。
【００３４】
本発明の実施形態は、上記（ａ）に関するものであり、クライアントモジュール１０３とサーバモジュール２０３とを組み合わせて図１に示したような情報システムを構築する際に、図２に示したような異常状態に陥る可能性があること、ならびに図２に示す異常状態からの復旧するために上述したような管理作業が必要であることを、システム管理者等が識別できるようにすることである。
【００３５】
図４は、実施形態に係る情報システム分析装置のブロック図である。情報システム分析装置３２の利用者は例えばシステム管理者であり、対象とする情報システムについての分析対象情報を、分析者用端末３１を用いて情報システム分析装置３２に送信する。情報システム分析装置３２は、異常状態分析部３２１と、管理作業分析部３２２と、モジュール状態遷移情報記憶部３２０とを具備する。情報システム分析装置３２は、分析者用端末３１から分析対象情報を受信すると、これを分析し、その分析結果を分析者用端末３１に送信する。送信された分析結果は分析者用端末３１によって表示される。
【００３６】
次に、モジュール状態遷移情報記憶部３２０に記憶される情報について説明する。
【００３７】
モジュール状態遷移情報記憶部３２０は、３つの情報、すなわち（１）モジュール情報、（２）状態情報、（３）遷移情報を記憶する。
【００３８】
図５にモジュール情報の例を示す。モジュール情報は、モジュール名と、状態情報および遷移情報とを関連付けたものである。すなわちモジュール情報のデータ４０１において、サーバモジュール２０３の状態情報は識別子Ｓ１で特定され、サーバモジュール２０３の遷移情報は識別子Ｔ１で特定されることを示している。
【００３９】
状態情報の例として、識別子Ｓ１で特定される状態情報、すなわちサーバモジュール２０３の状態情報を図６に示す。状態情報は、関連するモジュールがとりうる状態に関する情報をあらわしている。例えば、状態情報のデータ５０１は、状態識別子２で特定される状態は、起動しているが他のどのモジュールからも使用されていない状態であることを示している。状態情報には、例えば、図６における被接続数（ｘ）や最大被接続数（ｎ）などのパラメータを付加してもよいものとする。また、最大被接続数（ｎ）に付加されている「＄」は、最大被接続数（ｎ）が、分析開始時に利用者から分析者用端末３１を通して指定される必要があることを示すフラグとする。
【００４０】
遷移情報の例として、識別子Ｔ１で特定される遷移情報、すなわちサーバモジュール２０３の遷移情報を図７に示す。遷移情報は、関連するモジュールの遷移に関する情報をあらわしており、複数の状態間の遷移を表す状態間遷移情報と該遷移が自動的な遷移であるか手動的な遷移であるかを表す分類情報とを含む。例えば、遷移情報のデータ６０１は、遷移名が「ｓｔａｒｔ＿ｓｒｖ」である遷移はサーバモジュール２０３の状態遷移であって、状態識別子１で特定される状態（事前状態＝１）から状態識別子２で識別される状態（事後状態＝２）への遷移であること、および自動的には発生しない遷移であり（自動＝×）、手動的な操作によって発生する遷移である（手動＝○）ことを示している。遷移情報には、例えば図７に示したように、事前条件や事後条件に関する項目を設け、遷移発生前後の条件を上述の状態情報で用いたパラメータを用いて記憶してもよい。
【００４１】
なお、以上説明した状態情報と遷移情報は、それぞれ別の情報（ファイル）として実現してもよいし、一つの情報（ファイル）として実現してもよい。
【００４２】
図８は、本実施形態で用いるサーバモジュール２０３の状態情報および遷移情報を状態遷移図の形式で示したものである。図８において、実線で示された遷移は、該遷移が自動的に発生する遷移であり、点線で示された遷移は手動的に発生する遷移であり、破線によって示された遷移は自動的または手動的に発生する遷移である。なお、遷移名の前に付加された「［」、「］」で囲まれた数式は該遷移が発生するための事前条件である。
【００４３】
図９は、本実施形態で用いるクライアントモジュール１０３の状態情報および遷移情報を、図８と同様の形式の状態遷移図で示したものである。なお、図９において、状態「ａ」は計算機２００（サーバ）に接続していない状態、状態「ｂ」はサーバモジュール２０３とのコネクションを保持している状態、状態「ｃ」はサーバモジュール２０３とのコネクションを最大数保持している状態、状態「ｄ」は無効なコネクションを保持している状態である。また、パラメータ「ｙ」は、クライアントモジュール１０３が保持するコネクションの最大数である。
【００４４】
続いて、図１０を参照しながら、本実施形態に係る情報システム分析装置が分析対象とする情報システムをどのような手順で分析するかについて説明する。まず、利用者は、分析者用端末３１を用いて分析対象情報を入力する（Ｓ９０１）。分析装置３２は、分析者用端末３１から分析対象情報を受信し、異常状態分析（Ｓ９０２）、および管理作業分析（Ｓ９０３）を行う。分析結果は、分析者用端末３１に送信され、分析者用端末３１を通して利用者に表示される（Ｓ９０４）。
【００４５】
図１１乃至図１５に分析対象情報入力の様子を示す。本実施形態ではこれらの図に示すようなＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を用いて分析対象情報を入力する。
【００４６】
分析対象情報としては、構成情報、初期状態情報、および制約情報がある。本実施形態において、分析者用端末３１は、モジュール状態遷移情報３２０を情報システム分析装置３２から取得して表示するように構成されている。分析者は、分析者用端末３１に表示される情報を参照しながら分析対象情報を入力する。
【００４７】
モジュール状態遷移情報３２０に含まれるモジュール情報はモジュール名によって識別することができる。図１１に示すようにモジュール選択リスト１１０１においてモジュール名を表示することにより、利用者が構成情報を入力するのを補助している。利用者は、表示されたモジュール名から、分析対象システムを構成するモジュールを選択する。図１２は、図１１の画面でクライアント１２０１が選択された場合を示している。このクライアント１２０１は図１に示したクライアントモジュール１０３に対応する。利用者は、このように分析対象システムを構成するモジュールを指定できるものとする。
【００４８】
さらに本実施形態では、選択したモジュール間の接続関係１３０１をも指定できるものとする。例えば図１３に示すように、分析対象情報の入力画面では、クライアントモジュール１０３とサーバモジュール２０３との間に、接続関係１３０１があることが模式的に示されている。
【００４９】
図１４は、モジュールの状態に関する情報が指定される様子を図示したものである。図１４においては、サーバモジュール２０３の初期状態が「起動」（図６の状態識別子２で特定される状態）であることがラジオボタン１４０を用いて指定されている。また、サーバモジュール２０３の最大被接続数が「２」であることが専用ウィンドウ１４１にて指定されている。図１４には示していないが、クライアントモジュール１０３についても初期状態や最大コネクション保持数を指定するものとする。本実施形態では、ＧＵＩを用いた入力を仮定するが、同様の情報が入力できれば他のインタフェースから入力してもよい。さらに、分析者用端末３１は、利用者の利便性を向上するために、分析装置３２のモジュール状態遷移情報記憶部３２０から関連しうるモジュールに関する情報を検索する機能等を備えてもよい。
【００５０】
なお、本実施形態では、サーバモジュール２０３の初期状態が起動（図８における状態「２」）、サーバモジュール２０３の最大被接続数が「２」、クライアントモジュール１０３の初期状態がサーバへ未接続である状態（図９における状態「ａ」）、クライアントモジュール１０３の最大コネクション保持数が「２」であるとする。
【００５１】
図１４で示した初期状態等の入力が完了すると、利用者は図１５に示すように分析メニュー１５０から制約条件（メニュー）１５１を指定し、分析装置３２に分析対象情報を送信する。制約条件としては、「安全性」すわなち、意図しない状態で停止しないことや、「停止性」すわなち、意図しないループに陥らないこと、などを指定できるものとする。また、それ以外の制約も、例えば様相論理などの方式で指定できるものとする。なお、本実施形態では、安全性の保証が指定されたものと仮定する。
【００５２】
以上のように本実施形態では、構成情報として、サーバモジュール２０３とクライアントモジュール１０３の接続関係が指定され、初期状態情報として、「サーバモジュール２０３の初期状態＝起動（図８における状態「２」）」が指定され、「クライアントモジュール１０３の初期状態＝未接続（図９における状態「ａ」）」が指定され、制約情報として、「安全性保証」が指定されるものとする。なお、「安全性保証」はデッドロックのような状態、すなわち、システムがある状態で停止し動作しなくなる状態に陥らないこと、が保証されていることを示す。
【００５３】
次に図１６〜図２０を用いて異常状態分析（図１０、Ｓ９０２）について説明する。図１６は異常状態分析部３２１の処理の流れを示したものである。異常状態分析部３２１はまず、分析者用端末３１より構成情報、初期状態情報、および制約情報を受信する（Ｓ１２０１）。
【００５４】
続いて、モジュール状態遷移情報記憶部３２０から関連するモジュールの状態情報および遷移情報を読み込む（Ｓ１２０２）。ここで、関連するモジュールとは、異常状態分析部３２１が受信した構成情報により指定されているモジュールである。
【００５５】
本実施形態においてはサーバモジュール２０３とクライアントモジュール１０３のそれぞれに関して、状態情報と遷移情報が読み込まれる。続いて、これら状態情報と遷移情報に基づいて、自動的な遷移のみから構成されるモジュール毎の状態遷移モデル（以下、「自動系状態遷移モデル」と呼ぶ）を作成する（Ｓ１２０３）。すなわち、読み込んだ遷移情報のデータのうち「自動＝○」である遷移と、該遷移の事前状態または事後状態である状態からなる状態遷移モデルを作成する。
【００５６】
本実施形態では、サーバモジュール２０３の自動系状態遷移モデルとして図１７に示す状態遷移モデル１３０１が作成され、クライアントモジュール１０３の管理系状態遷移モデルとして図１８に示す状態遷移モデル１４０１が作成される。
【００５７】
続いて、Ｓ１２０３で作成したモジュール毎の自動系状態遷移モデル１３０１，１４０１を合成することによってシステム状態遷移モデルを作成する（Ｓ１２０４）。状態遷移モデルの合成は、複数のモジュール状態遷移モデル上で共通して出現する遷移名に注目して行う。なお、合成の詳細については非特許文献３などで説明されている。
【００５８】
本実施形態における状態遷移モデルの合成を図１９に示す。なお、システム状態遷移モデル中の状態は、（サーバモジュール２０３の状態、クライアントモジュール１０３の状態）の形式で記述するものとする。本実施形態において、サーバモジュール２０３とクライアントモジュール１０３の初期状態はそれぞれ「２」、「ａ」と指定されているため、合成後のシステム状態遷移モデル１５０１における初期状態は、（２、ａ）となる。
【００５９】
次に状態（２，ａ）からの遷移について説明する。サーバモジュール２０３の状態遷移モデル１３０１とクライアントモジュール１０３の状態遷移モデル１４０１で共通に出現する遷移は、これら２つの状態遷移モデルにおいて共有される遷移であると考える。例えば、システムの状態が（２，ａ）であるときに、遷移「ｃｏｎｎ」が発生すると、サーバモジュール２０３とクライアントモジュール１０３の両方で遷移「ｃｏｎｎ」が発生するものとする。従って、この場合、システムの状態は、（２，ａ）から（３，ｂ）に遷移する。このように考えてサーバモジュール２０３の状態遷移モデル１３０１とクライアントモジュール１０３の状態遷移モデル１４０１を合成すると図１９に示すようにシステム状態遷移モデル１５０１が作成される。
【００６０】
次に、作成されたシステム状態遷移モデル１５０１上の状態を、分析者用端末３１から受信した制約情報にしたがって正常状態と異常状態とに分類する（Ｓ１２０５）。ここでは、制約情報に指定される制約を満たす状態を正常状態、該制約を満たさない状態を異常状態とする。制約情報は、分析の対象とする情報システムが正常であるときに満たすべき制約を表している。
【００６１】
本実施形態では、上述したように安全性保証が制約条件として指定されている。状態遷移モデルにおいて安全性が保証されている状態とは「ある状態について、他の状態への遷移が存在する状態」と考えることができる。厳密には、安全性の定義はこれとは異なるが、簡単のため本実施形態ではこのような定義を用いる。
【００６２】
システム状態遷移モデル１５０１を参照すると、状態（２，ａ）、（３，ｂ）、（４，ｃ）が他の状態への遷移を持つため正常状態であり、状態（１，ａ）、（１，ｄ）が異常状態であることが分かる。
【００６３】
Ｓ１２０５では、この分類結果より状態分類情報を作成する。本実施形態における状態分類情報を図２０に示す。状態分類情報１６０はシステムの各状態が正常であるか否かを示す。図２０の状態分類情報１６０においては、「正常」の項目が「○」となっている状態が正常状態、「正常」の項目が「×」となっている状態が異常状態である。
【００６４】
異常状態分析部３２１では最後に、作成した状態分類情報１６０を管理作業分析部３２２に送信する（Ｓ１２０６）。
【００６５】
次に図２１〜図２５を用いて管理作業分析（図１０、Ｓ９０３）について説明する。図２１は管理作業分析部３２２の処理の流れを示したものである。管理作業分析部３２２は、まず異常状態分析部３２１から構成情報と状態分類情報１６０を受信する（Ｓ１７０１）。
【００６６】
続いて、異常状態分析部３２１から受信した状態分類情報１６０において、異常状態と判定された状態があるかを検査する（Ｓ１７０２）。異常状態が状態分類情報１６０に存在しなければ、管理作業情報として異常なしを登録する（Ｓ１７０８）。
【００６７】
状態分類情報１６０中に異常状態が存在する場合は、異常状態毎にＳ１７０３からＳ１７０６の処理を繰り返す。本実施形態では、状態（１，ａ）と状態（１，ｄ）について、Ｓ１７０３からＳ１７０６の処理が行われる。
【００６８】
以下に、状態（１，ｄ）に対するＳ１７０３からＳ１７０６の処理について説明する。
【００６９】
まず、Ｓ１７０３で構成情報に含まれるモジュールの状態情報および遷移情報をモジュール状態遷移情報記憶部３２０から読み込み、これら状態情報および遷移情報に基づいて、手動的な遷移のみから構成されるモジュール毎の状態遷移モデル（以下、「手動系状態遷移モデル」と呼ぶ）を作成する。すなわち、読み込んだ遷移情報のデータのうち「手動」の項目が「○」である遷移と、該遷移の事前状態または事後状態である状態からなる状態遷移モデルを作成する。
【００７０】
図２２にサーバモジュール２０３の手動系状態遷移モデル１８０１を示し、図２３にクライアントモジュール１０３の手動系状態遷移モデル１９０１を示す。
【００７１】
続いて、Ｓ１７０３で作成したモジュール毎の手動系状態遷移モデル１８０１、１９０１を合成し、管理状態遷移モデルを作成する（Ｓ１７０４）。
【００７２】
図２４に、管理状態遷移モデルを合成により作成する様子を示す。状態遷移モデルの合成は、対象とする異常状態を初期状態として、図１９を用いて説明したシステム状態遷移モデルを作成した際と同様の合成を行う。
【００７３】
状態（１，ｄ）を初期状態と考えた場合、図２４の管理状態モデル２００１が作成される。なお、図２４の手動系状態遷移モデル１８０１、１９０１において、破線によって表されている状態（３，４，ｂ，ｃ）は、初期状態を状態（１，ｄ）とした際に、到達し得ない遷移であるため、合成の際に無視できる。
【００７４】
続いて、作成した管理状態モデル２００１を参照し、対象とする異常状態から正常状態への遷移を探索する（Ｓ１７０５）。ここで、図２０に示される状態判定情報を参照すると、管理状態遷移モデル２００１において、状態（２，ａ）が正常状態であることが分かる。そこで、現在の対象異常状態である状態（１，ｄ）から状態（２，ａ）へ遷移するためには、遷移名「ｓｔａｒｔ＿ｓｒｖ」と遷移名「ｆｌｕｓｈ」で識別される遷移が必要であることが識別できる。したがって、探索結果として「ｓｔａｒｔ＿ｓｒｖ」と「ｆｌｕｓｈ」を登録する。なお、探索に失敗した場合は、探索結果として「探索失敗」を登録する。
【００７５】
続いて、遷移の探索結果を参照し、管理作業情報を作成する。管理作業情報は、異常状態と該異常状態に対する管理作業を関連付けて記憶する。本実施形態において、最終的に登録される管理作業情報２５０を図２５に示す。例えば、図２５のデータ２１０１は、異常状態（１，ｄ）に対しては管理作業として、遷移名「ｆｌｕｓｈ」と遷移名「ｓｔａｒｔ＿ｓｒｖ」に対応する管理作業が必要であることを示す。
【００７６】
状態分類情報１６０に含まれる全ての異常状態についてＳ１７０３からＳ１７０６までの処理が完了すると、作成された管理作業情報２５０を分析者用端末３１に送信する（Ｓ１７０７）。分析者用端末３１は、管理作業情報２５０を受信すると、これを適当な形式で表示する。
【００７７】
以上説明した本発明の実施形態によれば、異常状態（すなわち「障害」）と該異常状態に対して必要となる管理作業とを関連付けて利用者に提示することが可能となる。これにより、利用者は、該利用者が管理する情報システムにおいて発生しうる異常状態と該異常状態が発生した際に必要となる管理作業を、実際に異常状態に陥る前に把握することができるようになる。したがって、情報システムの保守管理を容易にすることが可能となる。
【００７８】
また、本実施形態では説明を省略したが、モジュールの状態と該状態を特定するために必要となる操作とを関連付けた情報や、遷移名と該遷移に対応する実際の管理作業とを関連付けた情報を記憶装置に記憶しており、これらの情報を検索するための検索手段を分析者用端末３１等に設けることが好ましい。この場合、さらに情報システムの保守管理を容易にすることができる。
【００７９】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００８０】
【図１】情報システム分析装置が分析の対象とする情報システムの正常状態を示す図
【図２】情報システム分析装置が分析の対象とする情報システムの異常状態を示す図
【図３】分散管理型自己修復技術が適用された情報システムを示す図
【図４】実施形態に係る情報システム分析装置のブロック図
【図５】モジュール情報の例を示す図
【図６】サーバモジュールの状態情報を示す図
【図７】サーバモジュールの遷移情報を示す図
【図８】サーバモジュールの状態遷移図
【図９】クライアントモジュールの状態遷移図
【図１０】情報システム分析装置による分析処理手順を示すフローチャート
【図１１】ＧＵＩを通じて分析対象情報を入力する旨を説明するための図
【図１２】ＧＵＩを通じて分析対象情報を入力する旨を説明するための図
【図１３】ＧＵＩを通じて分析対象情報を入力する旨を説明するための図
【図１４】ＧＵＩを通じて分析対象情報を入力する旨を説明するための図
【図１５】ＧＵＩを通じて分析対象情報を入力する旨を説明するための図
【図１６】異常状態分析の処理手順を示すフローチャート
【図１７】サーバモジュールの自動系状態遷移モデルを示す図
【図１８】クライアントジュールの自動系状態遷移モデルを示す図
【図１９】自動系状態遷移モデルの合成を示す図
【図２０】状態分類情報を示す図
【図２１】管理作業分析の処理手順を示すフローチャート
【図２２】サーバモジュールの手動系状態遷移モデルを示す図
【図２３】クライアントモジュールの手動系状態遷移モデルを示す図
【図２４】手動系状態遷移モデルの合成を示す図
【図２５】管理作業情報を示す図
【符号の説明】
【００８１】
３１…分析者用端末；
３２…情報システム分析装置；
３２１…異常状態分析部；
３２２…管理作業分析部；
モジュール状態遷移情報記憶部
【図１】
2008310683.tif 000003
【図２】
2008310683.tif 000004
【図３】
2008310683.tif 000005
【図４】
2008310683.tif 000006
【図５】
2008310683.tif 000007
【図６】
2008310683.tif 000008
【図７】
2008310683.tif 000009
【図８】
2008310683.tif 000010
【図９】
2008310683.tif 000011
【図１０】
2008310683.tif 000012
【図１１】
2008310683.tif 000013
【図１２】
2008310683.tif 000014
【図１３】
2008310683.tif 000015
【図１４】
2008310683.tif 000016
【図１５】
2008310683.tif 000017
【図１６】
2008310683.tif 000018
【図１７】
2008310683.tif 000019
【図１８】
2008310683.tif 000020
【図１９】
2008310683.tif 000021
【図２０】
2008310683.tif 000022
【図２１】
2008310683.tif 000023
【図２２】
2008310683.tif 000024
【図２３】
2008310683.tif 000025
【図２４】
2008310683.tif 000026
【図２５】
2008310683.tif 000027