(57)【要約】変更されている途中のシステムに関する要件が考慮された変更手順を生成できる変更手順生成装置を提供する。変更手順生成装置１０は、所定の変更要件に基づいてシステムが変更されている間のシステムの構成要素の状態で構成される状態群のうち変更されている間のシステムに関する所定の条件を満たす状態群以外の状態群を除去する除去手段１１を備える。
2017154763.tif 000002
【特許請求の範囲】
【請求項１】
所定の変更要件に基づいてシステムが変更されている間の前記システムの構成要素の状態で構成される状態群のうち前記変更されている間の前記システムに関する所定の条件を満たす状態群以外の状態群を除去する除去手段を備える
ことを特徴とする変更手順生成装置。
【請求項２】
前記状態群が前記所定の条件を満たすか否かを判定する判定手段を備える
請求項１記載の変更手順生成装置。
【請求項３】
前記状態群には、前記システムの全体の状態が含まれており、
前記判定手段は、前記システムの全体の状態が所定の条件を満たすか否かを判定する
請求項２記載の変更手順生成装置。
【請求項４】
前記所定の変更要件と前記システムを示す情報とを基に前記状態群を生成する状態群生成手段を備える
請求項１から請求項３のうちのいずれか１項に記載の変更手順生成装置。
【請求項５】
前記状態群を基に前記所定の変更要件に対応する変更手順を生成する手順生成手段を備える
請求項１から請求項４のうちのいずれか１項に記載の変更手順生成装置。
【請求項６】
前記システムを復旧する復旧手段を備え、
前記所定の変更要件は、障害が発生した前記システムを前記障害が発生する前の前記システムへ変更する要件であり、
前記手順生成手段は、前記所定の変更要件に対応する前記変更手順を生成し、
前記復旧手段は、生成された前記変更手順に基づいて前記システムを復旧する
請求項５記載の変更手順生成装置。
【請求項７】
所定の変更要件に基づいてシステムが変更されている間の前記システムの構成要素の状態で構成される状態群のうち前記変更されている間の前記システムに関する所定の条件を満たす状態群以外の状態群を除去する
ことを特徴とする変更手順生成方法。
【請求項８】
前記状態群が前記所定の条件を満たすか否かを判定する
請求項７記載の変更手順生成方法。
【請求項９】
前記状態群には、前記システムの全体の状態が含まれており、
前記システムの全体の状態が所定の条件を満たすか否かを判定する
請求項８記載の変更手順生成方法。
【請求項１０】
前記所定の変更要件と前記システムを示す情報とを基に前記状態群を生成する
請求項７から請求項９のうちのいずれか１項に記載の変更手順生成方法。
【請求項１１】
前記状態群を基に前記所定の変更要件に対応する変更手順を生成する
請求項７から請求項１０のうちのいずれか１項に記載の変更手順生成方法。
【請求項１２】
前記システムを復旧し、
前記所定の変更要件は、障害が発生した前記システムを前記障害が発生する前の前記システムへ変更する要件であり、
前記所定の変更要件に対応する前記変更手順を生成し、
生成された前記変更手順に基づいて前記システムを復旧する
請求項１１記載の変更手順生成方法。
【請求項１３】
コンピュータに、
所定の変更要件に基づいてシステムが変更されている間の前記システムの構成要素の状態で構成される状態群のうち前記変更されている間の前記システムに関する所定の条件を満たす状態群以外の状態群を除去する除去処理
を実行させる変更手順生成プログラムを記憶する記憶媒体。
【請求項１４】
コンピュータに、
前記状態群が前記所定の条件を満たすか否かを判定する判定処理を実行させる
前記変更手順生成プログラムを記憶する請求項１３記載の記憶媒体。
【請求項１５】
前記状態群には、前記システムの全体の状態が含まれており、
前記判定処理は、前記システムの全体の状態が所定の条件を満たすか否かを判定する
前記変更手順生成プログラムを記憶する請求項１４記載の記憶媒体。
【請求項１６】
コンピュータに、
前記所定の変更要件と前記システムを示す情報とを基に前記状態群を生成する状態群生成処理を実行させる
前記変更手順生成プログラムを記憶する請求項１３から請求項１５のうちのいずれか１項に記載の記憶媒体。
【請求項１７】
コンピュータに、
前記状態群を基に前記所定の変更要件に対応する変更手順を生成する手順生成処理を実行させる
前記変更手順生成プログラムを記憶する請求項１３から請求項１６のうちのいずれか１項に記載の記憶媒体。
【請求項１８】
コンピュータに、
前記システムを復旧する復旧処理を実行させ、
前記所定の変更要件は、障害が発生した前記システムを前記障害が発生する前の前記システムへ変更する要件であり、
前記手順生成処理は、前記所定の変更要件に対応する前記変更手順を生成し、
前記復旧処理は、生成された前記変更手順に基づいて前記システムを復旧する
前記変更手順生成プログラムを記憶する請求項１７記載の記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、変更手順生成装置、変更手順生成方法および変更手順生成プログラムを記憶する記憶媒体に関する。
【背景技術】
【０００２】
変更管理の目的は、あるシステムを変更する際に生じる、変更するシステムの管理者および変更作業者の手間と、変更するシステムの利用者への影響を少なくすることである。変更するシステムが、例えば、複数の部品から構成されるような複雑なシステムである場合、変更作業は複雑になる。変更作業が複雑になると、作業者の手間や、作業者の作業を監督する管理者の手間は増大する。その結果、システム利用者への影響も増大する。【０００３】
特に、システムを構成する部品間に依存性が存在する場合、各部品に対する変更作業の順序が問題になるため、作業が複雑になりやすい。部品間の依存性は、例えば、部品Ａと部品Ｂがある場合、部品Ａが正しく機能するためには部品Ｂが正しく機能することが求められるような、２つの要素間の関係性である。【０００４】
上記の例の場合、部品Ａは部品Ｂに依存するという。部品Ａと部品Ｂから構成されるシステムを構築する作業では、最初に部品Ｂを構築し、次に部品Ａを構築するというように、実施する作業に順序性が求められる。【０００５】
上記のような依存性を考慮しつつ、システムの変更に要する作業の計画を自動的に作成するシステムを変更管理システムと呼ぶ。変更管理システムでは、予め部品間の依存性に関する情報、および部品に対する作業に関する情報が定義されている。【０００６】
上記の変更管理システムを用いることで、管理者は、複雑な変更作業の実施に効果的な作業手順を効率的に作成できる。また、作業者も、作成された効果的な作業手順に基づいて、効率的に作業を実施できる。その結果、変更されるシステムの利用者への影響も少なくなることが期待される。【０００７】
上記のような変更管理システムに関して、既に多数の関連研究や関連製品が知られている。例えば、特許文献１には、各部品の動作状態と状態間に存在する依存性を定義し変更作業に要する変更手順を生成する変更計画システムが記載されている。【０００８】
また、部品の状態および状態間に存在する依存性を状態遷移図で表現する手法において、一般的にシステムの設計情報から状態遷移図への適切な変換方法の選定が課題になる。特許文献２には、状態を含むモデルの設計情報を容易に処理可能な状態遷移図に効率的に変換する変更管理システムが記載されている。【０００９】
また、非特許文献１には、各部品の設定パラメータと設定の順序が与えられるだけで対象のシステムの設定を変更する技術が記載されている。【００１０】
また、非特許文献２および非特許文献３には、システムの設定変更だけでなくシステムの構築にも用いられるライフサイクルフレームワークが規定されている。規定されているフレームワークでは、システムの変更手順がユーザ入力等の外部要因により与えられることが想定されている。【００１１】
また、非特許文献４には、変更手順を導出する際に変更時の部品の振る舞いを「再作成：replacement」、「影響なし：No Interruption」等と部品ごとに定義し、変更の際に定義に従って動作する技術が記載されている。【００１２】
また、特許文献３には、２つ以上の変更手順の整合性がとれているか否かを確認し、整合性がとれていない場合に正しいワークフローを提示するワークフロー定義変更方法が記載されている。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特開２０１５−２１５８８５号公報
【特許文献２】特開２０１５−２１５８８７号公報
【特許文献３】特許第５２２９２２３号公報
【非特許文献】
【００１４】
【非特許文献１】"An Overview of Chef"、[online]、CHEF DOCUMENTS、[２０１５年２月１６日検索]、インターネット<http://docs.opscode.com/chef_overview.html>
【非特許文献２】"OASIS Topology and Orchestration Specification for Cloud Applications"、[online]、OASIS、[２０１５年２月１６日検索]、インターネット<https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=tosca#overview>
【非特許文献３】"Network Functions Virtualisation (NFV); Management and Orchestration"、[online]、ETSI、[２０１５年２月１６日検索]、インターネット<http://www.etsi.org/deliver/etsi_gs/NFV-MAN/001_099/001/01.01.01_60/gs_NFV-MAN001v010101p.pdf>
【非特許文献４】"AWS CloudFormation"、[online]、AWS、[２０１５年２月１６日検索]、インターネット<http://aws.amazon.com/cloudformation/>
【発明の概要】
【発明が解決しようとする課題】
【００１５】
特許文献１に記載されている変更計画システムは、利用者が要求する最終的な状態へシステムを変更するための変更手順を導出するシステムである。しかし、特許文献１には、変更されている途中のシステムの状態をどのように扱うかが特に規定されていない。よって、特許文献１に記載されている変更計画システムは、システム変更の実行要件になる可能性がある、変更されている途中のシステムの可用性、スループット、またはリソース利用量等に関する種々の要件が考慮された変更手順を生成できない。【００１６】
また、非特許文献１に記載されている手法、および非特許文献４に記載されている手法は、変更前のシステムの状態と変更後のシステムの状態のみに着目して変更手順を導出する手法である。よって、非特許文献１に記載されている手法、および非特許文献４に記載されている手法も同様に、変更されている途中のシステムに関する要件が考慮された変更手順を導出できない。【００１７】
また、非特許文献２に記載されているフレームワーク、および非特許文献３に記載されているフレームワークでは、変更の方法が柔軟に記述されるため、システムの過渡状態に関する要件も記述される。しかし、非特許文献２に記載されているフレームワーク、および非特許文献３に記載されているフレームワークでは、システム構成の管理と変更手順の導出を直接関連付けることは想定されていない。【００１８】
すなわち、ユーザに変更手順自体を手動で入力することが求められるため、対応可能な変更パターンや変更量は対応者に依存する。非特許文献２に記載されているフレームワーク、または非特許文献３に記載されているフレームワークが使用された場合、対応可能な変更パターンや変更量は限られる。【００１９】
また、特許文献３に記載されているワークフロー定義変更方法は、複数の異なる変更手順間に存在する競合を解決することを目的にしており、単一の変更目的に対する変更手順の導出を目的にしていない。【００２０】
そこで、本発明は、上述した課題を解決する、変更されている途中のシステムに関する要件が考慮された変更手順を生成できる変更手順生成装置、変更手順生成方法および変更手順生成プログラムを記憶する記録媒体提供することを目的の１つとする。
【課題を解決するための手段】
【００２１】
本発明の一態様に係る変更手順生成装置は、所定の変更要件に基づいてシステムが変更されている間のシステムの構成要素の状態で構成される状態群のうち変更されている間のシステムに関する所定の条件を満たす状態群以外の状態群を除去する除去手段を備えることを特徴とする。【００２２】
本発明の一態様に係る変更手順生成方法は、所定の変更要件に基づいてシステムが変更されている間のシステムの構成要素の状態で構成される状態群のうち変更されている間のシステムに関する所定の条件を満たす状態群以外の状態群を除去することを特徴とする。【００２３】
本発明の一態様に係る記憶媒体は、コンピュータに、所定の変更要件に基づいてシステムが変更されている間のシステムの構成要素の状態で構成される状態群のうち変更されている間のシステムに関する所定の条件を満たす状態群以外の状態群を除去する除去処理を実行させることを特徴とする変更手順生成プログラムを記憶する。本発明の一態様は、その記憶媒体が記憶する変更手順生成プログラムによっても実現される。
【発明の効果】
【００２４】
本発明によれば、変更されている途中のシステムに関する要件が考慮された変更手順を生成できる。
【図面の簡単な説明】
【００２５】
【図１】本発明の第１の実施形態に係る変更手順生成装置の構成例を示すブロック図である。
【図２】本実施形態の入力情報の例を示す説明図である。
【図３】本実施形態に係るモデル展開部により入力情報から展開されたモデルの例を示す説明図である。
【図４】本実施形態に係る論理状態生成部により入力情報から生成された論理状態要素の例を示す説明図である。
【図５】本実施形態に係る状態遷移図生成部が生成するノードの例を示す説明図である。
【図６】本実施形態に係る状態遷移図生成部が生成する状態遷移図の例を示す説明図である。
【図７】本実施形態に係る状態遷移図生成部が生成するノードの他の例を示す説明図である。
【図８】本実施形態に係る状態遷移図生成部が生成する状態遷移図の他の例を示す説明図である。
【図９】本実施形態に係る手順導出部により入力情報から導出された変更手順の例を示す説明図である。
【図１０】本実施形態の変更手順生成装置による変更手順生成処理の動作を示すフローチャートである。
【図１１】本発明の第２の実施形態に係る変更手順生成装置の構成例を示すブロック図である。
【図１２】本実施形態の変更手順生成装置による復旧処理の動作を示すフローチャートである。
【図１３】本発明の第３の実施形態に係る変更手順生成装置の概要を示すブロック図である。
【図１４】本発明の実施形態に係る変更手順生成装置の各々を実現できるコンピュータのハードウェア構成の例を示すブロック図である。
【発明を実施するための形態】
【００２６】
＜＜第１の実施形態＞＞
［構成の説明］
以下、本発明の実施形態を、図面を参照して説明する。図１は、本発明による変更手順生成装置１００の第１の実施形態の構成例を示すブロック図である。
【００２７】
図１に示すように、本実施形態の変更手順生成装置１００は、モデル管理部１１０と、モデル展開部１２０と、論理状態生成部１３０と、論理状態評価部１４０と、状態遷移図生成部１５０と、手順導出部１６０とを備える。
【００２８】
また、図１に示すように、変更手順生成装置１００は、変更手順生成装置１００に情報を入力する入力装置２００と通信可能に接続されている。また、変更手順生成装置１００は、変更手順生成装置１００が生成した変更手順を出力する出力装置３００と通信可能に接続されている。
【００２９】
なお、変更手順生成装置１００は、入力装置２００または出力装置３００と通信可能に接続されていなくてもよい。変更手順生成装置１００は、単体で使用可能な装置である。
【００３０】
本実施形態の変更手順生成装置１００は、利用者が求めるシステムの最終的な状態とシステムの変更中に満たすことが求められるシステムの要件とを入力として、システムの変更途中の状態から変更完了後の状態までの全ての状態が所定の条件を満たす変更手順を生成する。
【００３１】
本実施形態において、システムの変更中に満たすことが求められるシステムの要件は、例えば変更前のシステムの構成部品の各状態や変更後のシステムの構成部品の各状態の組み合わせで表現される。システムの構成部品の各状態の組み合わせは、例えばシステムの全ての構成部品が取り得る全ての状態に関する直積集合の部分集合に含まれる要素で表現される。以下の説明では、システムの変更中に満たすことが求められるシステムの要件は、システムの変更中に満たされることが求められる構成要素の状態に関する要件、変更中のシステムの状態に関する要件、変更中の状態に関する要件、及び、変更中の要件などとも表記される。システムの変更中に満たすことが求められるシステムの要件は、過渡状態要件とも表記される。
【００３２】
システムの変更中に満たすことが求められるシステムの要件が指定されることによって、変更手順生成装置１００は、変更中のシステムの状態が所定の条件を満たすように考慮された変更手順を導出する。
【００３３】
モデル管理部１１０は、システムの構成要素の状態と状態間に存在する依存関係を記録する機能を有する。また、モデル管理部１１０は、システムの構成要素の状態の組み合わせに状態が依存する構成要素を記録する。以下、他の構成要素の状態の組み合わせに状態が依存する構成要素を、他の構成要素と区別して論理状態要素と呼ぶ。
【００３４】
モデル管理部１１０は、例えば、論理状態要素の各状態が成立する条件を、システムの構成要素の状態を入力とし真偽値を返す関数または論理式の形式で保持する。また、モデル管理部１１０では、例えば、構成要素の変更手順の具体的な形式、変更時の設定値等に相当するプロパティ、および変更時に考慮を要する構成要素間に存在する依存関係等の、変更手順の導出に要する具体的な情報が再利用可能な形式で管理されている。
【００３５】
モデル展開部１２０は、入力されたシステムの構成要素群と、システムの構成要素の変更前後の状態と、変更中の要件を表す論理状態要素が指定された過渡状態要件とに基づいて、具体的な状態モデル群と依存関係とを列挙する機能を有する。以下では、具体的な状態モデル群と依存関係とを列挙することを、モデル展開と表記する。すなわち、モデル展開部１２０は、モデル管理部１１０で管理されている変更手順の導出に要する具体的な情報に基づいて、入力されたシステムの構成要素に情報を付加することによってモデル展開を行う。
【００３６】
モデル展開を行う際、モデル展開部１２０は、入力された情報とモデル管理部１１０に記録されている情報を統合する。具体的には、モデル展開部１２０は、入力されたシステムの構成要素に対応する、モデル管理部１１０に登録されているモデル情報を参照する。システムの変更に要する付随要素や各要素間に存在する変更時の依存関係を補うことによって、モデル展開部１２０は、変更手順の導出に要するシステムの構成要素を揃える。
【００３７】
論理状態生成部１３０は、モデル展開部１２０から入力された過渡状態要件と、モデル管理部１１０に記録されている、過渡状態要件に対応する論理状態要素の情報とを統合することによって、変更手順の生成対象システムと論理状態要素との関係を具体化する機能を有する。
【００３８】
モデル管理部１１０に論理状態要素の状態を規定する関数または論理式が登録されている場合、論理状態生成部１３０は、入力された変更手順の生成対象システムの構成要素のうち、関数または論理式に与えられる構成要素を特定する。特定した後、論理状態生成部１３０は、変更手順の生成対象システムの各状態に対して状態が計算される具体的な論理状態要素を保持する。
【００３９】
論理状態評価部１４０は、変更手順の生成対象システムの各状態に対して、論理状態生成部１３０で生成された論理状態要素の状態を計算する機能を有する。論理状態評価部１４０は、例えば与えられた論理状態要素の状態を定義する判定式を用いて、システム全体の状態遷移図に含まれるノードのうち、過渡状態要件を満たさないノードを特定する。
【００４０】
状態遷移図生成部１５０は、モデル展開部１２０から入力された状態モデル群と、論理状態評価部１４０による、システムの各状態に対する過渡状態要件の適合性の判定結果とに基づいて、入力された過渡状態要件が考慮されたシステムの状態遷移図を生成する機能を有する。
【００４１】
状態遷移図生成部１５０は、システムの各構成要素が遷移可能な状態の組み合わせを基に入力されたシステムが取り得る状態を保持する。次いで、状態遷移図生成部１５０は、変更中の要件が満たされるか否かが論理状態評価部１４０によって判定された結果を用いて、システムが取り得る状態を限定する。
【００４２】
本実施形態の状態遷移図に含まれるノードは、システムの全構成要素が取り得る全状態に関する直積集合の部分集合に含まれる要素である。ノードに相当する要素が含まれる直積集合の部分集合は、全構成要素が取り得る全状態に関する単純な直積集合から遷移不可能な状態を有する要素が除去された集合である。
【００４３】
また、本実施形態の状態遷移図に含まれるエッジは、少なくとも一方から他方へ遷移可能であり、かつ含まれる構成要素の状態のうち１つの構成要素の状態が異なるノード間に張られるエッジである。
【００４４】
さらに、状態遷移図を生成する際、状態遷移図生成部１５０は、状態遷移図に含まれる各ノードが過渡状態要件を満たすか否かを確認する。過渡状態要件を満たさないノードが存在する場合、状態遷移図生成部１５０は、状態遷移図から過渡状態要件を満たさないノードを除去する。
【００４５】
各ノードが過渡状態要件を満たすか否かの判定は、状態遷移図生成部１５０から判定対象のノードに含まれる構成要素の状態を受け取った論理状態評価部１４０によって行われる。状態遷移図生成部１５０は、論理状態評価部１４０から判定結果を取得し、過渡状態要件を満たさないという判定結果が得られたノードを状態遷移図から除去する。
【００４６】
手順導出部１６０は、状態遷移図生成部１５０が生成した状態遷移図を基に、変更手順を導出する機能を有する。手順導出部１６０は、状態遷移図から変更手順を導出する問題を、有向グラフにおける最短経路を取得する最短経路問題として解くことができる。
【００４７】
よって、手順導出部１６０は、例えばダイクストラ法等の最短経路問題を解く既存のアルゴリズムを用いて変更手順を導出できる。なお、手順導出部１６０で用いられるアルゴリズムは、最短経路問題を解くアルゴリズムであればどのようなアルゴリズムでもよい。
【００４８】
本実施形態の変更手順生成装置１００は、遷移条件を含む状態マシン群と過渡状態要件とに基づいて、変更中の状態に関する要件が満たされる変更計画を生成できる。利用者は、例えば以下のように変更手順生成装置１００を用いて変更手順を生成できる。
【００４９】
利用者は、変更手順生成装置１００のモデル管理部１１０に状態マシンを含む構成部品モデルと、過渡状態要件が記述された論理状態要素モデルを登録する。次いで、利用者は、変更対象のシステムの現在の状態、システムの変更後の状態、および変更中のシステムの状態に関する要件を入力装置２００に入力する。
【００５０】
本実施形態の入力情報には、例えば変更手順が導出されるシステムの構成要素、構成要素の現在の状態、変更後のシステムの構成要素と構成要素の状態、および変更されている途中のシステムの構成要素と構成要素が取り得る状態群が含まれる。
【００５１】
次いで、入力装置２００は、登録されたモデルが組み合わせられた所定のシステム構成および過渡状態要件を変更要件としてモデル展開部１２０に送信する。モデル展開部１２０は、送信された変更要件を受信する。また、モデル展開部１２０は、受信された変更要件を論理状態生成部１３０に入力する。変更要件が与えられたモデル展開部１２０、および論理状態生成部１３０は、モデル管理部１１０に登録されている情報を基にモデル情報を生成する。
【００５２】
次いで、状態遷移図生成部１５０は、論理状態評価部１４０で計算されたシステムの各状態に対する過渡状態要件の適合性の判定結果を考慮して状態遷移図を生成する。上述したように、状態遷移図生成部１５０が生成する状態遷移図を基に変更手順を導出することは、最短経路問題を解くことに相当する。次いで、手順導出部１６０は、最短経路問題を解くことによって変更手順を導出する。
【００５３】
上記のように、本実施形態の変更手順生成装置１００は、予め定義された１つ以上の変更中のシステムの状態に関する要件が指定されるだけで、指定された要件が満たされるように変更中のシステムの状態を保ちながらシステムの状態を要求された状態へ変更する変更手順を導出できる。以下、本実施形態の変更手順生成装置１００による変更手順の具体的な生成例を、図２〜図９を参照して説明する。
【００５４】
図２は、本実施形態の入力情報の例を示す説明図である。図２に示す入力情報には、変更前のシステムを示す情報と、変更後のシステムを示す情報と、過渡状態要件を示す情報が含まれる。すなわち、図２に示す入力情報は、変更要件を表す。
【００５５】
図２に示すように、変更対象のシステムは、server Aとserver Bのサービスを処理する２台のサーバを含む。また、変更対象のシステムは、各サーバに負荷を振り分ける１台のロードバランサを含む。
【００５６】
図２に示すように、変更対象のシステムには、server A、server B、およびlogic.serviceの３つの構成要素が含まれている。Server Aおよびserver Bは、サービスを処理するサーバの状態をそれぞれ表す。
【００５７】
また、図２において楕円が構成要素の取り得る状態を表し、楕円内の文字が状態名を表す。Server Aおよびserver Bにおける状態fは、サーバの停止状態を表す。また、状態tは、サーバが起動しており、単体のサーバとしてサービスを提供できる状態を表す。また、状態uは、サービスを提供できる状態であり、かつ導入されているアプリケーション等の変更を要する状態を表す。
【００５８】
また、図２において楕円を結ぶ矢印が状態遷移を表す。すなわち、構成要素の状態は、矢印で結ばれた別の状態へ遷移可能である。例えば、図２に示すように、状態uは状態fへのみ遷移可能である。
【００５９】
logic.serviceは、システム全体としてサービスを提供できるか否かを表す構成要素である。logic.serviceは、他の構成要素の状態の組み合わせに状態が依存する構成要素であるため、論理状態要素である。
【００６０】
論理状態要素であるlogic.serviceの各状態は、以下に説明するように他の構成要素の状態の組み合わせに依存する。例えば、server Aとserver Bのうち少なくともどちらか１つの状態が状態tであれば、システム全体としてサービスを提供できるため、論理状態要素であるlogic.serviceの状態は状態tに定義されると考えられる。
【００６１】
また、server Aの状態とserver Bの状態の両方が状態fであれば、システム全体としてサービスを提供できないため、論理状態要素であるlogic.serviceの状態は状態fに定義されると考えられる。一般的に、論理状態要素の状態を示す情報として、システムの構成要素(m(1)・・・m(n))を入力とし、真偽値（trueまたはfalse）を返す関数が定義される。
【００６２】
また、図２において、二重線の楕円は各タイミングでの構成要素の状態を表す。図２に示す変更前のシステムおよび変更後のシステムそれぞれに、各タイミングでの構成要素の状態が含まれる。
【００６３】
例えば、図２に示すように変更前のシステムに含まれるserver Aの状態は、状態uである。また、図２に示すように変更後のシステムに含まれるserver Aの状態は、状態tである。
すなわち、図２に示す入力情報から、server Aの状態を状態uから状態tへ変更する手順が部分的に求められていることが把握される。
【００６４】
また、本実施形態の過渡状態要件は、システムの変更中に満たされることが求められる構成要素の状態に関する要件である。図２に示す過渡状態要件は、システムの変更中に論理状態要素であるlogic.serviceの状態が状態tであることを求めている。
【００６５】
すなわち、図２に示す入力情報は、多重化されたサーバによるサービスの提供が維持されたままでの各サーバの更新の実行要求を示す入力情報である。サーバの更新作業には、サーバの停止操作やサーバの起動操作が含まれる。
【００６６】
図２に示すような入力情報を受信すると、モデル展開部１２０は、モデル管理部１１０に予め登録されている情報を用いてモデル展開を行う。
【００６７】
図３は、モデル展開部１２０により入力情報から展開されたモデルの例を示す説明図である。図３に示すモデルは、図２に示す入力情報から展開された、変更対象のシステムおよび変更要件を表すモデルである。なお、図３において、二重線の楕円は変更前の状態を表し、黒色の楕円は変更後の状態を表す。また、図３において、破線の矢印は依存関係を表す。
【００６８】
モデル展開を行う際、モデル展開部１２０は、各構成要素の変更前のシステムにおける状態と変更後のシステムにおける状態、およびモデル管理部１１０で管理されている情報をそれぞれ参照する。図３に示すように、各情報を参照したモデル展開部１２０によって、展開されたモデルには各構成要素の状態の変更に要する要素や依存性を示す情報が付加されている。
【００６９】
例えば、図３には、config Cの状態uとserver Aの状態fの間に依存関係が存在することが示されている。すなわち、config Cの状態が状態uから状態fに遷移する際に、server Aの状態は、状態fであることが求められる。
【００７０】
同様に、図３には、config Dの状態uとserver Bの状態fの間に依存関係が存在することが示されている。すなわち、config Dの状態が状態uから状態fに遷移する際に、server Bの状態は、状態fであることが求められる。
【００７１】
また、モデル展開部１２０は、入力された論理状態要素および過渡状態要件を示す情報を論理状態生成部１３０へ受け渡す。論理状態生成部１３０は、受け渡された情報に対応するモデル管理部１１０に登録されている論理状態要素の情報を取り出す。取り出された情報を用いて、論理状態生成部１３０は、具体的な論理状態要素を生成する。
【００７２】
図４は、論理状態生成部１３０により入力情報から生成された論理状態要素の例を示す説明図である。図４に示す論理状態要素は、図２に示す入力情報から生成された論理状態要素である。
【００７３】
図４には、モデル管理部１１０から取り出された情報が示す論理状態要素の各状態の定義が示されている。例えば、図４における右のブロック内には、「t: counts(services.t|u) > 0」および「f: counts(services.t|u) = 0」と記載されている。「counts(services.t|u)」は、入力情報が示す構成要素のうち、状態が状態tまたは状態uである構成要素の数を意味する。
【００７４】
すなわち、「t: counts(services.t|u) > 0」は、状態が状態tまたは状態uである構成要素が少なくとも１つ存在する場合、論理状態要素であるlogic.serviceの状態が状態tであることを示す。また、「f: counts(services.t|u) = 0」は、状態が状態tまたは状態uである構成要素が１つも存在しない場合、すなわち０である場合、logic.serviceの状態が状態fであることを示す。
【００７５】
また、図４には、モデル展開部１２０から渡された論理状態要素の状態の判定に使用される構成要素のリストが示されている。すなわち、図４における右のブロック内に記載されている「argument: services = [server A, server B]」は、論理状態要素の状態の判定に使用される構成要素がserver Aとserver Bの２つの構成要素であることを示す。論理状態生成部１３０は、生成された情報を論理状態評価部１４０へ受け渡す。
【００７６】
上記のように、論理状態要素の状態を定義する判定式は、server Aの状態とserver Bの状態の論理和で表現される。判定式は、server Aとserver Bのうち少なくとも１つのサーバの状態が状態tまたは状態uであれば論理状態要素の状態は状態tであることを示す。また、判定式は、server Aとserver Bのいずれのサーバの状態も状態fであれば論理状態要素の状態は状態fであることを示す。
【００７７】
モデル展開部１２０は、展開されたモデルを示すモデル情報を状態遷移図生成部１５０へ受け渡す。状態遷移図生成部１５０は、受け取ったモデル情報を基に、システム全体の状態遷移図を生成する。
【００７８】
図５は、状態遷移図生成部１５０が生成するノードの例を示す説明図である。図５に示すノード１〜ノード１２は、logic.serviceの状態、server Aの状態、およびserver Bの状態で構成されている。なお、config Cの状態とconfig Dの状態は省略されている。
【００７９】
図５に示すノードは、システムの全構成要素が取り得る全状態に関する直積集合の部分集合に含まれる要素に相当する。すなわち、論理状態評価部１４０の判定結果に基づいて除去されるノードも含まれている。図５に示すノード９〜ノード１２が、判定結果に基づいて除去されるノードである。
【００８０】
図２に示すように、過渡状態要件は、論理状態要素の状態が状態tであることである。状態遷移図生成部１５０がシステムの構成要素の状態の各組み合わせ（すなわち、状態遷移図に含まれる各ノード）を生成すると、論理状態評価部１４０は、各ノードに含まれるsever Aの状態とserver Bの状態の論理和を計算し、計算結果がfalseになるノードを特定する。図５に示すノード９〜ノード１２が、論理状態評価部１４０の計算結果がfalseであるノードである。
【００８１】
図６は、状態遷移図生成部１５０が生成する状態遷移図の例を示す説明図である。図６において、二重線の角丸四角形は変更前の状態で構成されるノードを表し、黒色の角丸四角形は変更後の状態で構成されるノードを表し、破線の角丸四角形は除去されるノードを表す。また、図６において、矢印はエッジを表し、破線の矢印は除去されるエッジを表す。
【００８２】
図６に示す状態遷移図は、図５に示すノードを基に状態遷移図生成部１５０が生成した状態遷移図である。すなわち、図６に示す状態遷移図には、論理状態評価部１４０の判定結果に基づいて除去されるノード、およびノードと併せて除去されるエッジも含まれている。
【００８３】
図７は、状態遷移図生成部１５０が生成するノードの他の例を示す説明図である。図７に示すノードには、論理状態評価部１４０の判定結果に基づいて除去されるノード、すなわちノード９〜ノード１２は含まれていない。
【００８４】
図８は、状態遷移図生成部１５０が生成する状態遷移図の他の例を示す説明図である。図８における各表記の意味は、図６における各表記の意味とそれぞれ同様である。
【００８５】
図８に示す状態遷移図は、図７に示すノードを基に状態遷移図生成部１５０が生成した状態遷移図である。すなわち、図８に示す状態遷移図には、論理状態評価部１４０の判定結果に基づいて除去されるノード、およびノードと併せて除去されるエッジは含まれていない。
【００８６】
図８に示すような状態遷移図を生成した後、状態遷移図生成部１５０は、生成された状態遷移図を手順導出部１６０へ受け渡す。手順導出部１６０は、受け取った状態遷移図を基に変更手順を導出する。変更手順を導出した後、手順導出部１６０は、導出された変更手順を出力装置３００に送信する。
【００８７】
図９は、手順導出部１６０により入力情報から導出された変更手順の例を示す説明図である。図９に示す変更手順は、図２に示す入力情報が表す変更要件に対する変更手順である。
【００８８】
図９に示す各矩形が、変更手順を構成する１つの操作に相当する。例えば、最初の矩形内には「server A: u -> f」と記載されている。すなわち、変更手順の最初の操作は、server Aの状態を状態uから状態fへ変化させる操作である。なお、図９に示す変更手順において、config Cおよびconfig Dに対する操作は省略されている。
【００８９】
図９に示す変更手順には、server Aの状態とserver Bの状態が同時に状態fになるような操作が含まれていない。その理由は、入力された過渡状態要件を満たさないノードが状態遷移図から除去されたためである。
【００９０】
図９に示す変更手順に従って、サーバの更新が順番に実行される。出力装置３００は、図２に示す入力情報に対して、図９に示す変更手順を出力する。
【００９１】
［動作の説明］
以下、本実施形態の変更手順生成装置１００の、変更手順を生成する動作を、図１０を参照して説明する。図１０は、本実施形態の変更手順生成装置１００による変更手順生成処理の動作を示すフローチャートである。
【００９２】
変更要件を表す入力情報が入力されると、入力装置２００は、入力情報をモデル展開部１２０に送信する。すなわち、モデル展開部１２０が入力情報を受信する（ステップS110）。
【００９３】
次いで、モデル展開部１２０は、受信された入力情報を基にモデル展開を行う（ステップS120）。モデル展開を行う際、モデル展開部１２０は、モデル管理部１１０で管理されている情報を参照する。
【００９４】
次いで、モデル展開部１２０は、展開されたモデルを示すモデル情報を状態遷移図生成部１５０へ受け渡す。また、モデル展開部１２０は、受信された論理状態要素および過渡状態要件を示す情報を論理状態生成部１３０へ受け渡す。
【００９５】
次いで、論理状態生成部１３０は、受け取った情報を基に論理状態要素を生成する（ステップS130）。論理状態要素を生成する際、論理状態生成部１３０は、モデル管理部１１０で管理されている情報を参照する。
【００９６】
次いで、状態遷移図生成部１５０は、受け取ったモデル情報を基にシステム全体の状態遷移図を生成する（ステップS140）。状態遷移図を生成した後、状態遷移図生成部１５０は、状態遷移図に含まれる各ノードを論理状態評価部１４０に受け渡す。
【００９７】
次いで、論理状態評価部１４０は、受け取った各ノードが過渡状態要件を満たすか否かを判定する（ステップS150）。論理状態評価部１４０は、各ノードに対する判定結果を状態遷移図生成部１５０に受け渡す。
【００９８】
次いで、状態遷移図生成部１５０は、受け取った判定結果に基づいて、過渡状態要件を満たさないノードを状態遷移図から除去する（ステップS160）。状態遷移図生成部１５０は、除去されるノードに関連するエッジも併せて状態遷移図から除去する。対象のノードおよびエッジを除去した後、状態遷移図生成部１５０は、状態遷移図を手順導出部１６０へ受け渡す。
【００９９】
次いで、手順導出部１６０は、受け取った状態遷移図を基に変更手順を導出する。変更手順を導出した後、手順導出部１６０は、導出された変更手順を出力装置３００に送信する（ステップS170）。導出された変更手順を送信した後、変更手順生成装置１００は、変更手順生成処理を終了する。
【０１００】
［発明の効果］
本実施形態の変更手順生成装置を使用する場合、使用者は、システムの構成要素の変更前の状態、変更後の状態、および予め定義されている汎用的な変更中の要件を指定するだけで、変更中の要件が満たされる各システム変更に適した変更手順を生成できる。
【０１０１】
その理由は、論理状態評価部が、システムの各構成要素の変更中の各状態で構成されるノードが指定された変更中の要件を満たすか否かを判定し、状態遷移図生成部が、判定結果に基づいて変更中の要件を満たさないノードを状態遷移図から除去するためである。
【０１０２】
＜＜第２の実施形態＞＞
［構成の説明］
次に、本発明の第２の実施形態を、図面を参照して説明する。図１１は、本発明の第２の実施形態に係る変更手順生成装置１００の構成例を示すブロック図である。図１１に示すように、本実施形態の変更手順生成装置１００は、モデル管理部１１０と、モデル展開部１２０と、論理状態生成部１３０と、論理状態評価部１４０と、状態遷移図生成部１５０と、手順導出部１６０と、状態監視部１７０と、状態復旧部１８０とを備える。
【０１０３】
状態監視部１７０および状態復旧部１８０以外の図１１に示す変更手順生成装置１００の構成は、図１に示す変更手順生成装置１００の構成と同様である。状態監視部１７０と状態復旧部１８０は、それぞれ入力装置２００と出力装置３００の代わりとして使用される構成要素である。
【０１０４】
本実施形態の変更手順生成装置１００は、システムの構成要素の現在の状態を監視し、何らかの原因により構成要素の状態が変更された場合、予め設定された過渡状態要件が満たされる復旧手順を生成する。次いで、変更手順生成装置１００は、生成された復旧手順に沿って構成要素の状態を復旧する。
【０１０５】
状態監視部１７０は、監視対象のシステムの状態を監視する機能を有する。また、状態監視部１７０は、監視対象のシステムの状態が変化した場合、状態の変化を検知する。状態の変化を検知した場合、状態監視部１７０は、モデル展開部１２０にシステムの復旧手順の生成を要求する。
【０１０６】
システムの復旧手順の生成を要求する際、状態監視部１７０は、障害情報をモデル展開部１２０へ受け渡す。障害情報には、変化が検知された後の状態が変更前の状態として、また変化が検知される前の状態が変更後の状態としてそれぞれ含まれている。また、障害情報には、状態監視部１７０に予め設定されている過渡状態要件も含まれている。
【０１０７】
手順導出部１６０は、導出された復旧手順を状態復旧部１８０へ受け渡す。状態復旧部１８０は、受け取った復旧手順に基づいて、構成要素の状態を復旧する機能を有する。
【０１０８】
［動作の説明］
以下、本実施形態の変更手順生成装置１００の構成要素の状態を復旧する動作を、図１２を参照して説明する。図１２は、本実施形態の変更手順生成装置１００による復旧処理の動作を示すフローチャートである。
【０１０９】
状態監視部１７０が、システムの構成要素の状態の変化を検知する（ステップS210）。次いで、状態監視部１７０は、モデル展開部１２０にシステムの復旧手順の生成を要求する。すなわち、モデル展開部１２０に障害情報が入力される（ステップS220）。
【０１１０】
次いで、モデル展開部１２０は、入力された障害情報を基にモデル展開を行う（ステップS230）。
【０１１１】
ステップS240〜ステップS270の処理は、第１の実施形態のステップS130〜ステップS160の処理と同様である。
【０１１２】
手順導出部１６０は、受け取った状態遷移図を基に復旧手順を導出する（ステップS280）。復旧手順を導出した後、手順導出部１６０は、導出された復旧手順を状態復旧部１８０に受け渡す。
【０１１３】
状態復旧部１８０は、受け取った復旧手順に基づいて、構成要素の状態を復旧する（ステップS290）。構成要素の状態を復旧した後、変更手順生成装置１００は、復旧処理を終了する。
【０１１４】
［発明の効果］
本実施形態の変更手順生成装置は、システムの障害を検知した際、例えば事前に定義されたサービスレベルを維持しながらシステムの復旧作業を実行できる。その理由は、状態監視部がサービスレベル等に関する過渡状態要件をモデル展開部に入力し、手順導出部が入力された過渡状態要件が常に満たされる復旧手順を導出し、状態復旧部が導出された復旧手順に基づいて復旧作業を実行できるためである。
【０１１５】
なお、本実施形態の変更手順生成装置１００は、例えば、記憶媒体に格納されているプログラムに従って処理を実行するCPU(Central Processing Unit)等のプロセッサによって実現される。すなわちモデル管理部１１０、モデル展開部１２０、論理状態生成部１３０、論理状態評価部１４０、状態遷移図生成部１５０、手順導出部１６０、状態監視部１７０、および状態復旧部１８０は、例えば、プログラム制御に従って処理を実行するCPUによって実現される。
【０１１６】
また、本実施形態の変更手順生成装置１００における各部は、ハードウェア回路によって実現されてもよい。
【０１１７】
＜＜第３の実施形態＞＞
次に、本発明の第３の実施形態を説明する。図１３は、本実施形態に係る変更手順生成装置の概要を示すブロック図である。本実施形態の変更手順生成装置１０は、所定の変更要件に基づいてシステムが変更されている間のシステムの構成要素の状態で構成される状態群のうち変更されている間のシステムに関する所定の条件を満たす状態群以外の状態群を除去する除去部１１を備える。状態群は、例えば、上述のノードである。除去部１１は、例えば、上述の状態遷移図生成部１５０である。
【０１１８】
そのような構成により、本実施形態に係る変更手順生成装置は、変更されている途中のシステムに関する要件が考慮された変更手順を生成できる。
【０１１９】
また、変更手順生成装置１０は、状態群が所定の条件を満たすか否かを判定する判定部（例えば、論理状態評価部１４０）を備えてもよい。
【０１２０】
そのような構成により、本実施形態に係る変更手順生成装置は、過渡状態要件が用いられた論理状態評価部の判定結果に基づいて状態遷移図に含まれるノードを除去できる。
【０１２１】
また、状態群には、システム全体の状態が含まれていてもよい。判定部は、システム全体の状態が所定の条件を満たすか否かを判定してもよい。
【０１２２】
そのような構成により、本実施形態に係る変更手順生成装置は、変更作業中の間もシステムがサービスを提供し続けることができるような変更手順を生成できる。
【０１２３】
また、変更手順生成装置１０は、所定の変更要件とシステムを示す情報とを基に状態群を生成する状態群生成部（例えば、状態遷移図生成部１５０）を備えてもよい。
【０１２４】
そのような構成により、本実施形態に係る変更手順生成装置は、システムの構成要素が取り得る状態で構成されたノードが含まれる状態遷移図を生成できる。
【０１２５】
また、変更手順生成装置１０は、状態群を基に所定の変更要件に対応する変更手順を生成する手順生成部（例えば、手順導出部１６０）を備えてもよい。
【０１２６】
そのような構成により、本実施形態に係る変更手順生成装置は、過渡状態要件を満たすノードのみに基づいて変更手順を生成できる。
【０１２７】
また、変更手順生成装置１０は、システムを復旧する復旧部（例えば、状態復旧部１８０）を備えていてもよい。所定の変更要件は、障害が発生したシステムを障害が発生する前のシステムへ変更する要件であってもよい。手順生成部は、所定の変更要件に対応する変更手順（例えば、復旧手順）を生成してもよい。復旧部は、生成された変更手順に基づいてシステムを復旧してもよい。
【０１２８】
そのような構成により、本実施形態に係る変更手順生成装置は、障害が発生したシステムを復旧するための復旧手順を生成できる。
【０１２９】
＜＜他の実施形態＞＞
本発明の実施形態に係る変更手順生成装置の各々は、上述のように、プログラムがロードされたメモリと、メモリにロードされたプログラムを実行するプロセッサとを含む、コンピュータによって実現できる。本発明の実施形態に係る変更手順生成装置の各々は、回路等の、専用のハードウェアによって実現できる。本発明の実施形態に係る変更手順生成装置は、上述のコンピュータと、専用のハードウェアとの組合せによっても実現できる。
図１４は、本発明の実施形態に係る変更手順生成装置（変更手順生成装置１００及び変更手順生成装置１０）を実現できるコンピュータのハードウェア構成を表すブロック図である。図１４を参照すると、コンピュータ１０００は、プロセッサ１００１と、メモリ１００２と、記憶装置１００３と、Ｉ／Ｏ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）インタフェース１００４とを含む。また、コンピュータ１０００は、記憶媒体１００５にアクセスすることができる。メモリ１００２と記憶装置１００３は、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ハードディスクなどの記憶装置である。記憶媒体１００５は、例えば、ＲＡＭ、ハードディスクなどの記憶装置、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、可搬記憶媒体である。記憶装置１００３が記憶媒体１００５であってもよい。プロセッサ１００１は、メモリ１００２と、記憶装置１００３に対して、データやプログラムの読み出しと書き込みを行うことができる。プロセッサ１００１は、Ｉ／Ｏインタフェース１００４を介して、例えば、入力装置２００及び出力装置３００などにアクセスすることができる。プロセッサ１００１は、記憶媒体１００５にアクセスできる。
記憶媒体１００５には、コンピュータ１０００を、例えば、変更手順生成装置１００として動作させるプログラムが格納されていてもよい。言い換えると、記憶媒体１００５は、例えば、モデル管理部１１０、モデル展開部１２０、論理状態生成部１３０、論理状態評価部１４０、状態遷移図生成部１５０、及び、手順導出部１６０の機能を実現するプログラムを記憶していてもよい。記憶媒体１００５に格納されるプログラムは、更に、状態監視部１７０及び状態復旧部１８０の機能を実現してもよい。
プロセッサ１００１は、記憶媒体１００５に格納されているプログラムを、メモリ１００２にロードする。そして、プロセッサ１００１が、メモリ１００２にロードされたプログラムを実行する。そして、コンピュータ１０００は、変更手順生成装置１００として動作する。即ち、モデル管理部１１０、モデル展開部１２０、論理状態生成部１３０、論理状態評価部１４０、状態遷移図生成部１５０及び手順導出部１６０は、上述のプログラムがロードされたメモリ１００２と、そのプログラムを実行するプロセッサ１００１とにより実現できる。同様に、状態監視部１７０及び状態復旧部１８０は、上述のプログラムがロードされたメモリ１００２と、そのプログラムを実行するプロセッサ１００１とにより実現できる。
モデル管理部１１０、モデル展開部１２０、論理状態生成部１３０、論理状態評価部１４０、状態遷移図生成部１５０及び手順導出部１６０は、専用の回路によっても実現できる。同様に、状態監視部１７０及び状態復旧部１８０は、専用の回路によっても実現できる。モデル管理部１１０、モデル展開部１２０、論理状態生成部１３０、論理状態評価部１４０、状態遷移図生成部１５０及び手順導出部１６０は、上述のプロセッサ１００１及びメモリ１００２と、専用の回路との組合せによっても実現できる。同様に、状態監視部１７０及び状態復旧部１８０は、上述のプロセッサ１００１及びメモリ１００２と、専用の回路との組合せによっても実現できる。
記憶媒体１００５には、コンピュータ１０００を、例えば、変更手順生成装置１０として動作させるプログラムが格納されていてもよい。言い換えると、記憶媒体１００５は、例えば、生成部１１の機能を実現するプログラムを記憶していてもよい。プロセッサ１００１は、記憶媒体１００５に格納されているプログラムを、メモリ１００２にロードする。そして、プロセッサ１００１が、メモリ１００２にロードされたプログラムを実行する。そして、コンピュータ１０００は、変更手順生成装置１０として動作する。即ち、生成部１１は、上述のプログラムがロードされたメモリ１００２と、そのプログラムを実行するプロセッサ１００１とにより実現できる。生成部１１は、専用の回路によっても実現できる。生成部１１は、上述のプロセッサ１００１及びメモリ１００２と、専用の回路との組合せによっても実現できる。
また、上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
（付記１）
所定の変更要件に基づいてシステムが変更されている間の前記システムの構成要素の状態で構成される状態群のうち前記変更されている間の前記システムに関する所定の条件を満たす状態群以外の状態群を除去する除去手段を備える
ことを特徴とする変更手順生成装置。
（付記２）
前記状態群が前記所定の条件を満たすか否かを判定する判定手段を備える
付記１記載の変更手順生成装置。
（付記３）
前記状態群には、前記システムの全体の状態が含まれており、
前記判定手段は、前記システムの全体の状態が所定の条件を満たすか否かを判定する
付記２記載の変更手順生成装置。
（付記４）
前記所定の変更要件と前記システムを示す情報とを基に前記状態群を生成する状態群生成手段を備える
付記１から付記３のうちのいずれか１項に記載の変更手順生成装置。
（付記５）
前記状態群を基に前記所定の変更要件に対応する変更手順を生成する手順生成手段を備える
付記１から付記４のうちのいずれか１項に記載の変更手順生成装置。
（付記６）
前記システムを復旧する復旧手段を備え、
前記所定の変更要件は、障害が発生した前記システムを前記障害が発生する前の前記システムへ変更する要件であり、
前記手順生成手段は、前記所定の変更要件に対応する前記変更手順を生成し、
前記復旧手段は、生成された前記変更手順に基づいて前記システムを復旧する
付記５記載の変更手順生成装置。
（付記７）
所定の変更要件に基づいてシステムが変更されている間の前記システムの構成要素の状態で構成される状態群のうち前記変更されている間の前記システムに関する所定の条件を満たす状態群以外の状態群を除去する
ことを特徴とする変更手順生成方法。
（付記８）
前記状態群が前記所定の条件を満たすか否かを判定する
付記７記載の変更手順生成方法。
（付記９）
前記状態群には、前記システムの全体の状態が含まれており、
前記システムの全体の状態が所定の条件を満たすか否かを判定する
付記８記載の変更手順生成方法。
（付記１０）
前記所定の変更要件と前記システムを示す情報とを基に前記状態群を生成する
付記７から付記９のうちのいずれか１項に記載の変更手順生成方法。
（付記１１）
前記状態群を基に前記所定の変更要件に対応する変更手順を生成する
付記７から付記１０のうちのいずれか１項に記載の変更手順生成方法。
（付記１２）
前記システムを復旧し、
前記所定の変更要件は、障害が発生した前記システムを前記障害が発生する前の前記システムへ変更する要件であり、
前記所定の変更要件に対応する前記変更手順を生成し、
生成された前記変更手順に基づいて前記システムを復旧する
付記１１記載の変更手順生成方法。
（付記１３）
コンピュータに、
所定の変更要件に基づいてシステムが変更されている間の前記システムの構成要素の状態で構成される状態群のうち前記変更されている間の前記システムに関する所定の条件を満たす状態群以外の状態群を除去する除去処理
を実行させる変更手順生成プログラムを記憶する記憶媒体。
（付記１４）
コンピュータに、
前記状態群が前記所定の条件を満たすか否かを判定する判定処理を実行させる
前記変更手順生成プログラムを記憶する付記１３記載の記憶媒体。
（付記5）
前記状態群には、前記システムの全体の状態が含まれており、
前記判定処理は、前記システムの全体の状態が所定の条件を満たすか否かを判定する
前記変更手順生成プログラムを記憶する付記１４記載の記憶媒体。
（付記６）
コンピュータに、
前記所定の変更要件と前記システムを示す情報とを基に前記状態群を生成する状態群生成処理を実行させる
前記変更手順生成プログラムを記憶する付記１３から付記１５のうちのいずれか１項に記載の記憶媒体。
（付記１７）
コンピュータに、
前記状態群を基に前記所定の変更要件に対応する変更手順を生成する手順生成処理を実行させる
前記変更手順生成プログラムを記憶する付記１３から付記１６のうちのいずれか１項に記載の記憶媒体。
（付記１８）
コンピュータに、
前記システムを復旧する復旧処理を実行させ、
前記所定の変更要件は、障害が発生した前記システムを前記障害が発生する前の前記システムへ変更する要件であり、
前記手順生成処理は、前記所定の変更要件に対応する前記変更手順を生成し、
前記復旧処理は、生成された前記変更手順に基づいて前記システムを復旧する
前記変更手順生成プログラムを記憶する付記１７記載の記憶媒体。
以上、実施形態および実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
この出願は、２０１６年３月１０日に出願された日本出願特願２０１６−０４６５２６を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【０１３０】
本発明は、システム構成定義の編集の用途に好適に適用される。また、本発明は、アプリケーションやサーバ等のシステムの構成要素を組み合わせるだけで構成要素の動作に要するデプロイ操作を確定しデプロイを行うツール製品にも好適に適用される。
【符号の説明】
【０１３１】
１０、１００    変更手順生成装置
１１    除去部
１１０    モデル管理部
１２０    モデル展開部
１３０    論理状態生成部
１４０    論理状態評価部
１５０    状態遷移図生成部
１６０    手順導出部
１７０    状態監視部
１８０    状態復旧部
２００    入力装置
３００    出力装置
１０００    コンピュータ
１００１    プロセッサ
１００２    メモリ
１００３    記憶装置
１００４    Ｉ／Ｏインタフェース
１００５    記憶媒体
【図１】
2017154763.tif 000003
【図２】
2017154763.tif 000004
【図３】
2017154763.tif 000005
【図４】
2017154763.tif 000006
【図５】
2017154763.tif 000007
【図６】
2017154763.tif 000008
【図７】
2017154763.tif 000009
【図８】
2017154763.tif 000010
【図９】
2017154763.tif 000011
【図１０】
2017154763.tif 000012
【図１１】
2017154763.tif 000013
【図１２】
2017154763.tif 000014
【図１３】
2017154763.tif 000015
【図１４】
2017154763.tif 000016
【手続補正書】
【提出日】平成30年9月3日(2018.9.3)
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
所定の変更要件に基づいてシステムが変更されている間の前記システムの構成要素の状態で構成される状態群のうち前記変更されている間の前記システムに関する所定の条件を満たす状態群以外の状態群を除去する除去手段を備える
ことを特徴とする変更手順生成装置。
【請求項２】
前記状態群が前記所定の条件を満たすか否かを判定する判定手段を備える
請求項１記載の変更手順生成装置。
【請求項３】
前記状態群には、前記システムの全体の状態が含まれており、
前記判定手段は、前記システムの全体の状態が所定の条件を満たすか否かを判定する
請求項２記載の変更手順生成装置。
【請求項４】
前記所定の変更要件と前記システムを示す情報とを基に前記状態群を生成する状態群生成手段を備える
請求項１から請求項３のうちのいずれか１項に記載の変更手順生成装置。
【請求項５】
前記状態群を基に前記所定の変更要件に対応する変更手順を生成する手順生成手段を備える
請求項１から請求項４のうちのいずれか１項に記載の変更手順生成装置。
【請求項６】
前記システムを復旧する復旧手段を備え、
前記所定の変更要件は、障害が発生した前記システムを前記障害が発生する前の前記システムへ変更する要件であり、
前記手順生成手段は、前記所定の変更要件に対応する前記変更手順を生成し、
前記復旧手段は、生成された前記変更手順に基づいて前記システムを復旧する
請求項５記載の変更手順生成装置。
【請求項７】
所定の変更要件に基づいてシステムが変更されている間の前記システムの構成要素の状態で構成される状態群のうち前記変更されている間の前記システムに関する所定の条件を満たす状態群以外の状態群を除去する
ことを特徴とする変更手順生成方法。
【請求項８】
前記状態群が前記所定の条件を満たすか否かを判定する
請求項７記載の変更手順生成方法。
【請求項９】
コンピュータに、
所定の変更要件に基づいてシステムが変更されている間の前記システムの構成要素の状態で構成される状態群のうち前記変更されている間の前記システムに関する所定の条件を満たす状態群以外の状態群を除去する除去処理
を実行させる変更手順生成プログラム。
【請求項１０】
コンピュータに、
前記状態群が前記所定の条件を満たすか否かを判定する判定処理を実行させる
請求項９記載の変更手順生成プログラム。
【国際調査報告】
2017154763.tif 000017
2017154763.tif 000018
2017154763.tif 000019
2017154763.tif 000020