JP2011175482A - 情報処理装置、情報処理方法およびプログラム - Google Patents

情報処理装置、情報処理方法およびプログラム Download PDF

Info

Publication number
JP2011175482A
JP2011175482A JP2010039259A JP2010039259A JP2011175482A JP 2011175482 A JP2011175482 A JP 2011175482A JP 2010039259 A JP2010039259 A JP 2010039259A JP 2010039259 A JP2010039259 A JP 2010039259A JP 2011175482 A JP2011175482 A JP 2011175482A
Authority
JP
Japan
Prior art keywords
module
model
information processing
behavior
processing apparatus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2010039259A
Other languages
English (en)
Other versions
JP5458947B2 (ja
Inventor
Sayaka Izukura
さやか 伊豆倉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2010039259A priority Critical patent/JP5458947B2/ja
Publication of JP2011175482A publication Critical patent/JP2011175482A/ja
Application granted granted Critical
Publication of JP5458947B2 publication Critical patent/JP5458947B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】限られた情報に基づいて、システムが実行する処理手順を生成する情報処理装置を提供する。
【解決手段】情報処理装置10は、モジュールが実行する処理手順を示す振る舞いモデルを、モジュール別に記憶した振る舞いモデル記憶部15と、システムにおけるモジュール間の接続関係を示す構造モデルを取得する構造モデル取得部11と、取得された構造モデルが示すシステムに含まれるモジュールに対応する振る舞いモデルを振る舞いモデル記憶部15から抽出し、抽出された複数の振る舞いモデル同士を当該構造モデルに基づいて組み合わせて、システムが実行する処理手順を示す統合モデルを生成する統合モデル生成部12と、を備える。
【選択図】図1

Description

本発明は、情報処理装置、情報処理方法およびプログラムに関する。
近年、ITシステムの大規模化、複雑化に伴い、システム開発に要する労力が増大している。また、開発サイクルの短期化や品質向上のための仕様変更などによって、さらなる負担を強いられている。このような負担を軽減し、システム開発工数を短縮するために、システムの設計段階において、ある程度システムのディペンダビリティ(非機能要求)を見積もる必要がある。ここで、ディペンダビリティとは、性能・可用性・セキュリティなど、システムに対する機能以外の部分に関するユーザの要求全般のことである。このように、事前に設計対象のITシステムのディペンダビリティを予測することで、開発作業を効率的に進め、開発に要する工数を低減させることができる。
この種の技術として、特許文献1(特開2004−318654号公報)には、次のような性能評価装置が記載されている。この性能評価装置は、半導体装置の設計に用いられ、設計対象の半導体装置の機能をモデル化した機能モデルと、当該半導体装置の物理アーキテクチャをモデル化したアーキテクチャモデルと、を入力し保持し、アーキテクチャモデルに機能モデルを割り当てて性能を評価する。ここでの性能とは、具体的には、各プロセスの実行遅延、通信リソースへの通信遅延、記憶リソースへのデータ転送遅延等が挙げられている。この性能評価装置を用いることにより、ユーザは設計段階で最適なアーキテクチャを決定することができる。
また、この種の技術として、特許文献2(特開2001−184204号公報)には、次のようなモジュール実行順序の決定方法が記載されている。各モジュールとCPUとの並列動作可能性または接続関係の情報に基づいて、各モジュール間の実行順序の組み合わせを導出する。そして、各モジュールの実行処理時間または復帰時間の情報に基づいて、導出された実行順序の組み合わせで動作させたときの全体プログラムの実行時間を計算し、当該全体プログラムの実行時間が最短になる実行順序の組み合わせを選択する。これにより、最適なモジュール実行順序を自動的に決定することができる。
特開2004−318654号公報 特開2001−184204号公報
しかしながら上記技術は、モジュールまたはプロセスの各々の処理時間が決まっていないと、アーキテクチャの評価や実行順序の決定が行えないという点で改善の余地を有していた。特に、システムの設計段階において、全てのモジュールまたはプロセスの処理時間が決まっていることは稀であり、一部のモジュールまたはプロセスの処理時間については推測値を与えるしかない場合も多い。この推測値と実際値とが大きく異なってしまうと、上記技術においては最適な評価や決定にならない可能性がある。
本発明は上記事情に鑑みてなされたものであり、その目的とするところは、限られた情報に基づいて、システムが実行する処理手順を生成する情報処理装置、情報処理方法およびプログラムを提供することにある。
本発明によれば、モジュールが実行する処理手順を示す振る舞いモデルを、前記モジュール別に記憶した記憶手段と、複数の前記モジュールから構成されるシステムにおける前記モジュール間の接続関係を示す構造モデルを取得する取得手段と、前記取得手段によって取得された前記構造モデルが示す前記システムに含まれる前記モジュールに対応する前記振る舞いモデルを前記記憶手段から抽出し、抽出された複数の前記振る舞いモデル同士を当該構造モデルに基づいて組み合わせて、前記システムが実行する処理手順を示す統合モデルを生成する生成手段と、を備えることを特徴とする情報処理装置が提供される。
また、本発明によれば、モジュールが実行する処理手順を示す振る舞いモデルを、前記モジュール別に記憶手段に記憶する記憶ステップと、複数の前記モジュールからなるシステムにおける前記モジュール間の接続関係を示す構造モデルを取得する取得ステップと、前記取得ステップで取得された前記構造モデルが示す前記システムに含まれる前記モジュールに対応する前記振る舞いモデルを前記記憶手段から抽出し、抽出された複数の前記振る舞いモデル同士を当該構造モデルに基づいて組み合わせて、前記システムが実行する処理手順を示す統合モデルを生成する生成ステップと、を備えることを特徴とする情報処理方法が提供される。
さらに、本発明によれば、コンピュータが読み出し可能な記憶媒体に格納されているプログラムであって、モジュールが実行する処理手順を示す振る舞いモデルを、前記モジュール別に記憶手段に記憶する記憶処理と、複数の前記モジュールからなるシステムにおける前記モジュール間の接続関係を示す構造モデルを取得する取得処理と、前記取得処理で取得された前記構造モデルが示す前記システムに含まれる前記モジュールに対応する前記振る舞いモデルを前記記憶手段から抽出し、抽出された複数の前記振る舞いモデル同士を当該構造モデルに基づいて組み合わせて、前記システムが実行する処理手順を示す統合モデルを生成する生成処理と、を前記コンピュータに実行させることを特徴とするプログラムが提供される。
本発明によれば、限られた情報に基づいて、システムが実行する処理手順を生成する情報処理装置、情報処理方法およびプログラムが提供される。
本発明の実施の形態に係る情報処理装置の構成図である。 本実施形態の構造モデルの例を示す図である。 本実施形態の振る舞いモデルの例を示す図である。 本実施形態の統合モデルの例を示す図である。 本実施形態の統合モデルの例を示す図である。 本実施形態の情報処理装置の動作を表すフローチャートである。
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
〔第1の実施形態〕
図1は、本発明の実施の形態に係る情報処理装置10の構成図である。情報処理装置10は、構造モデル取得部11、統合モデル生成部12、ディペンダビリティ算出部13、構造モデル記憶部14、振る舞いモデル記憶部15、関係情報記憶部16を備える。
なお、構造モデル記憶部14、振る舞いモデル記憶部15および関係情報記憶部16は、それぞれ別の記憶媒体であってもよいし、単一の記憶媒体内の異なる記憶領域であってもよい。
構造モデル記憶部14は、複数のモジュールから構成されるシステムにおけるモジュール間の接続関係を示す構造モデルを少なくとも一つ記憶している。構造モデル取得部11(取得手段)は、構造モデルを構造モデル記憶部14から取得する。なお、本実施形態において構造モデルの取得先は構造モデル記憶部14に限定して記載するが、必ずしもこれに限らない。例えば、構造モデル取得部11は、他の装置(図示せず)で生成された構造モデルを取得してもよい。
振る舞いモデル記憶部15(記憶手段)は、モジュールが実行する処理手順を示す振る舞いモデルを、モジュール別に記憶している。統合モデル生成部12(生成手段)は、構造モデル取得部11によって取得された構造モデルが示すシステムに含まれるモジュールに対応する振る舞いモデルを振る舞いモデル記憶部15から抽出する。そして、統合モデル生成部12は、抽出された複数の振る舞いモデル同士を当該構造モデルに基づいて組み合わせて、システムが実行する処理手順を示す統合モデルを生成する。
ディペンダビリティ算出部13は、統合モデル生成部12によって生成された統合モデル、および関係情報記憶部16に記憶されている情報に基づいて、分析対象であるシステムのディペンダビリティを算出する。
上述のモジュールとは、当該システムを構成する要素となるもので、いくつかの部分的機能を集め、まとまりのある機能を有するものである。具体的には、例えばWebサーバやストレージサーバなどの各種サーバ機器やファイアウォール、クライアントPCなどである。
上述の構造モデルとは、様々な業務内容や規模に応じて構築されるシステムの設計図に相当するもので、評価対象となるシステムに関する情報をUML(Unified Modeling Language)やSysML(Systems Modeling Language)などのモデリング言語で表現したものである。
図2は、本実施形態の構造モデルの例を示す図である。図2(A)に示す構造モデルは、モジュール111およびモジュール113から構成されるシステムを示している。従って、当該構造モデルによって示されるシステムは、モジュール111が正常に動作し、かつモジュール113が正常に動作していれば稼動可能である。なお、ここで正常に動作するとは、モジュール111やモジュール113がフルスペックで動作できなくても、最低限の機能を満足する程度に動作できれば、正常と見なしてよい。
図2(B)に示す構造モデルは、モジュール111、モジュール112およびモジュール113から構成されるシステムを示している。モジュール111とモジュール112とは多重系の接続関係にある。すなわち、モジュール111が故障したときはモジュール112が代替可能であり、モジュール112が故障したときはモジュール111が代替可能である。従って、当該構造モデルによって示されるシステムは、モジュール111またはモジュール112の少なくとも一方が正常に動作し、かつモジュール113が正常に動作していれば稼動可能である。なお、本実施形態において、モジュール111が主系、モジュール112が待機系として動作していることを前提として説明する。
上述の振る舞いモデルとは、各モジュールに対して行われる動作や処理を時系列に沿ってモデル化したもので、UMLやSysMLのようなモデリング言語を用いて表すことができる。また、振る舞いモデルは、ある条件によって動作や処理の流れがいくつかの方向に分かれる条件分岐(以下、分岐ノードと呼ぶ)を含む。
図3は、本実施形態の振る舞いモデルの例を示す図である。図3(A)の振る舞いモデルは、モジュールに故障が発生してから、当該モジュールが正常に動作するまでの処理手順をアクティビティ図によってモデル化したものである。本実施形態においては、図3(A)の振る舞いモデルは、モジュール113、または主系として動作しているモジュール111に対応する。
図3(A)の振る舞いモデルには、以下のような動作や処理が含まれる。
・モジュールが故障する。
・モジュールで実行されているプロセスを再起動する。
・モジュールのオペレーティングシステム(OS)を再起動する。
・モジュール交換する。
・モジュールが正常に動作する。
また、図3(A)の振る舞いモデルは5つの分岐ノードを有している。分岐ノードA1は、当該振る舞いモデルに対応するモジュールに対して行われる動作や処理で復旧する選択肢(A11)と、当該モジュールから他のモジュールへの切替処理で復旧する選択肢(A12)があり得ることを示す分岐ノードであり、構造的ノードと呼ばれる。分岐ノードA2は、プロセスを再起動する選択肢(A21)とOSを再起動する選択肢(A22)があり得ることを示す分岐ノードであり、運用的ノードと呼ばれる。分岐ノードA3は、プロセスを再起動するとき、成功する選択肢(A31)と失敗する選択肢(A32)とがあり得ることを示す分岐ノードであり、確率的ノードと呼ばれる。また、分岐ノードA4は、OSを再起動するとき、成功する選択肢(A41)と失敗する選択肢(A42)とがあり得ることを示す分岐ノードであり、分岐ノードA3と同様に確率的ノードと呼ばれる。分岐ノードA5は、OSを再起動する選択肢(A51)とモジュールを交換する選択肢(A52)があり得ることを示す分岐ノードであり、分岐ノードA2と同様に運用的ノードと呼ばれる。なお、モジュールを交換する処理は必ず成功して、当該モジュールが復旧することを前提としており、ステップS4に対応する確率的ノードは存在しない。
図3(A1)の振る舞いモデルにおいて、モジュールに故障が発生したら(ステップS1)、まず分岐ノードA1に移行する。分岐ノードA1でA11が選択されたとき、分岐ノードA2に移行する。分岐ノードA1でA12が選択されたときは、当該モジュールから他のモジュールへの切替処理に移行するが、この処理は他のモジュールに関わる処理なので、ここでは図示しないものとする。
分岐ノードA2でA21が選択されたとき、プロセスを再起動する(ステップS2)。また、分岐ノードA2でA22が選択されたとき、OSを再起動する(ステップS3)。プロセスの再起動が成功したとき(分岐ノードA3でA31が選択されたとき)、またはOSの再起動が成功したとき(分岐ノードA4でA41が選択されたとき)、当該モジュールは正常に動作する(ステップS5)。
プロセスの再起動が失敗したとき(分岐ノードA3でA32が選択されたとき)、分岐ノードA5に移行する。続いて、分岐ノードA5でA51が選択されたとき、OSを再起動する(ステップS3)。また、分岐ノードA5でA52が選択されたとき、あるいは、OSの再起動が失敗したとき(分岐ノードA4でA42が選択されたとき)、モジュールを交換し(ステップS4)、当該モジュールは正常に動作する(ステップS5)。
図3(B)の振る舞いモデルは、待機系で動作していたモジュールが主系の動作に切り替わるまでの処理手順をアクティビティ図によってモデル化したものである。本実施形態においては、図3(B)の振る舞いモデルは、待機系として動作しているモジュール112に対応する。
図3(B)の振る舞いモデルには、以下のような動作や処理が含まれる。
・モジュールが待機系として動作する。
・モジュールの動作を待機系から主系に切り替える。
・モジュールが主系として正常に動作する。
また、図3(B)の振る舞いモデルには、分岐モードが含まれず、上記の動作や処理は全て直列につながっている。すなわち、モジュールの動作を待機系から主系に動作を切り替えるは必ず成功することを前提とするものである。
図3(B)の振る舞いモデルにおいて、まず、モジュールが待機系として動作しており(ステップT1)、当該モジュールが待機系から主系に動作を切り替えると(ステップT2)、当該モジュールは主系として正常に動作する(ステップT3)。
なお、図3(A)、(B)で示す振る舞いモデルに含まれる動作や処理、またそれを実行する順序は例であって、本発明はこれに限定されるものではない。
統合モデル生成部12は、取得された構造モデルの情報を、振る舞いモデル上にマッピングし、両者の情報を統合する機能を持つ。ここでは、図2に示す構造モデルおよび図3に示す振る舞いモデルを用いて、統合モデル生成部12が統合モデルを生成する処理について、具体的に説明する。なお、統合モデルとは、あるシステムに含まれるいずれかのモジュールが故障してから当該システムが正常に戻るまでの復旧手順を示す振る舞いモデルのことであり、UMLやSysMLのようなモデリング言語を用いて表すことができる。
まず、構造モデル取得部11が、図2(A)に示す構造モデルを取得した場合について説明する。このとき、統合モデル生成部12は、モジュール111に対応する振る舞いモデルとして図3(A)の振る舞いモデルを抽出し、またモジュール113に対応する振る舞いモデルとしても図3(A)の振る舞いモデルを抽出する。そして、統合モデル生成部12は、図2(A)の構造モデルからモジュール111とモジュール113とが直列に接続していることを判断し、抽出された二つの振る舞いモデルを判断結果に基づいて組合せて、図4に示す統合モデルを生成する。なお、統合モデル生成部12は、構造モデルからモジュール111とモジュール113とが直列に接続していることを示す情報自体を抽出することによって判断結果を得てもよい。あるいは、統合モデル生成部12は、構造モデルに対して解析処理を行うことによってモジュール111とモジュール113とが直列に接続していることを示す情報を生成して判断結果を得てもよい。
図4は、本実施形態の統合モデルの例である。まず、システムダウンすると(ステップU1)、分岐ノードB1に移行する。分岐ノードB1は、システムダウンの原因がモジュール111の故障である選択肢(B11)と、モジュール113の故障である選択肢(B12)があり得ることを示している。
分岐ノードB1でB11が選択されたとき、モジュール111の故障(ステップS11)に移行し、次に分岐ノードB2に移行する。分岐ノードB2は、図3(A)で説明した分岐ノードA1と同様に構造的ノードであり、モジュール111に対して行われる動作や処理で復旧する選択肢(B21)と、モジュール111から他のモジュールへの切替処理で復旧する選択肢(B22)があり得ることを示している。しかし、図2(A)の構造モデルによれば、モジュール111の待機系に相当する他のジュールは存在しないので、分岐ノードB2では、常にB21が選択され、B22という選択肢は実際には選択されない。従って、図4において、B21の選択肢のみが図示される。
分岐ノードB2でB21が選択されたとき、分岐ノードB3に移行する。分岐ノードB3に移行してから、モジュール111が正常に動作する(ステップS15)までの動作フローについては、図3(A)の説明の分岐ノードA2からステップS5まで動作フローと同様なので、詳細な説明は割愛する。
分岐ノードB1でB12が選択されたとき、モジュール113の故障(ステップS21)に移行し、次に分岐ノードB7に移行する。分岐ノードB7は、図3(A)で説明した分岐ノードA1と同様に構造的ノードであり、モジュール113に対して行われる動作や処理で復旧する選択肢(B71)と、モジュール113から他のモジュールへの切替処理で復旧する選択肢(B72)があり得ることを示している。しかし、図2(A)の構造モデルによれば、モジュール113の待機系に相当する他のジュールは存在しないので、分岐ノードB7では、常にB71が選択され、B72という選択肢は実際には選択されない。従って、図4において、B71の選択肢のみが図示される。
分岐ノードB7でB71が選択されたとき、分岐ノードB8に移行する。分岐ノードB8に移行してから、モジュール113が正常に動作する(ステップS25)までの動作フローについては、図3(A)の説明の分岐ノードA2からステップS5まで動作フローと同様なので、詳細な説明は割愛する。
故障していたモジュール111が正常に動作すると(ステップS15)、または故障していたモジュール113が正常に動作すると(ステップS25)、当該システムは復旧し、正常に稼動する(ステップU2)。
次ぎに、構造モデル取得部11が、図2(B)に示す構造モデルを取得した場合について説明する。このとき、統合モデル生成部12は、モジュール111に対応する振る舞いモデルとして図3(A)の振る舞いモデルを抽出し、モジュール113に対応する振る舞いモデルとしても図3(A)の振る舞いモデルを抽出する。また、統合モデル生成部12は、モジュール112に対応する振る舞いモデルとして図3(B)の振る舞いモデルを抽出する。そして、統合モデル生成部12は、図2(B)の構造モデルからモジュール111とモジュール112とが多重系の接続関係にあること、モジュール111とモジュール113とが直列に接続していること、モジュール112とモジュール113とが直列に接続していること等を判断する。さらに、統合モデル生成部12は、抽出された三つの振る舞いモデルを判断結果に基づいて組合せて、図5に示す統合モデルを生成する。
図5は、本実施形態の統合モデルの例である。まず、システムダウンすると(ステップV1)、分岐ノードC1に移行する。分岐ノードC1は、システムダウンの原因がモジュール111の故障である選択肢(C11)と、モジュール113の故障である選択肢(C12)があり得ることを示している。なお、本実施形態においては、待機系として動作しているモジュール112は、故障しないことを前提として説明する。
分岐ノードC1でC11が選択されたとき、モジュール111の故障(ステップS31)に移行し、次に分岐ノードC2に移行する。分岐ノードC2は、図3(A)で説明した分岐ノードA1と同様に構造的ノードであり、モジュール111に対して行われる動作や処理で復旧する選択肢(C21)と、モジュール111から他のモジュールへの切替処理で復旧する選択肢(C22)があり得ることを示している。図2(B)の構造モデルによれば、モジュール111に対してモジュール112が待機系として存在する。従って、図5において、C21とC22の選択肢が共に図示される。
分岐ノードC2でC21が選択されたとき、分岐ノードC3に移行する。分岐ノードC3に移行してから、モジュール111が正常に動作する(ステップS35)までの動作フローについては、図3(A)の説明の分岐ノードA2からステップS5まで動作フローと同様なので、詳細な説明は割愛する。
分岐ノードC2でC22が選択されたとき、モジュール112は待機系から主系に動作を切り替え(ステップT12)、モジュール112はモジュール111の代わりに主系として正常に動作する(ステップT13)。すなわち、ステップT12とステップT13は、図3(B)の振る舞いモデルにおけるステップT2とステップT3に相当する。すなわち、統合モデル生成部12は、モジュール111に対応する図3(A)の振る舞いモデルに含まれる処理から、モジュール112に対応する図3(B)の振る舞いモデルに含まれる処理へと移行する処理手順を含めて、統合モデルを生成する。
分岐ノードC1でC12が選択されたとき、モジュール113の故障(ステップS41)に移行し、次に分岐ノードC7に移行する。分岐ノードC7は、図3(A)で説明した分岐ノードA1と同様に構造的ノードであり、モジュール113に対して行われる動作や処理で復旧する選択肢(C71)と、モジュール113から他のモジュールへの切替処理で復旧する選択肢(C72)があり得ることを示している。しかし、図2(B)の構造モデルによれば、モジュール113の待機系に相当する他のジュールは存在しないので、分岐ノードC7では、常にC71が選択され、C72という選択肢は実際には選択されない。従って、図4において、C71の選択肢のみが図示される。
分岐ノードC7でC71が選択されたとき、分岐ノードC8に移行する。分岐ノードC8に移行してから、モジュール113が正常に動作する(ステップS45)までの動作フローについては、図3(A)の説明の分岐ノードA2からステップS5まで動作フローと同様なので、詳細な説明は割愛する。
故障していたモジュール111が正常に動作する(ステップS35)、モジュール112がモジュール111の代わりに主系として正常に動作する(ステップT13)、または故障していたモジュール113が正常に動作すると(ステップS45)、当該システムは復旧し、正常に稼動する(ステップV2)。
ディペンダビリティ算出部13は、上記統合モデルに書かれた情報に基づいて、分析対象のシステムのディペンダビリティを算出する。なお、ディペンダビリティ算出部13の処理は、算出するディペンダビリティの内容によって異なる。
例えば、ディペンダビリティ算出部13が、統合モデルが示す処理手順の実行に要する所要時間をディペンダビリティとして算出する場合、統合モデル生成部12によって生成された統合モデルが示す処理手順に含まれる各々の処理の処理時間を取得し、取得した処理時間に基づいて所要時間を算出してもよい。このとき、ディペンダビリティ算出部13は、各々の処理の処理時間を関係情報記憶部16から取得してもよい。
また、ディペンダビリティ算出部13が、統合モデルが示す処理手順の実行に要する所要時間の期待値をディペンダビリティとして算出する場合、統合モデル生成部12によって生成された統合モデルが示す処理手順に含まれる各々の処理の処理時間と成功確率とを取得し、取得した処理時間と成功確率とに基づいて所要時間の期待値を算出してもよい。このとき、ディペンダビリティ算出部13は、各々の処理の処理時間と成功確率とを関係情報記憶部16から取得してもよい。
なお、ディペンダビリティ算出部13は、統合モデルによって示される処理手順の全部についてディペンダビリティを算出してもよいし、処理手順の一部についてディペンダビリティを算出してもよい。
また、ディペンダビリティ算出部13は、算出されたディペンダビリティの一部または全部を、情報処理装置10の表示部(図示せず)に表示出力してもよいし、印刷部(図示せず)に印刷出力してもよい。また、ディペンダビリティ算出部13は、算出されたディペンダビリティの一部または全部を、他の装置に出力してもよい。
また、ディペンダビリティ算出部13は、算出されたディペンダビリティに基づいて最適な処理手順を選択して出力してもよい。例えば、ディペンダビリティ算出部13は、算出された所用時間が最短である処理手順を選択して出力してもよいし、算出された所用時間が長い処理手順から順番に処理手順を選択して出力してもよい。あるいは、ディペンダビリティ算出部13は、算出された所用時間の期待値が最も小さい処理手順を選択して出力してもよいし、算出された所用時間の期待値が大きい順番に処理手順を選択して出力してもよい。
図6は、本実施形態の情報処理装置10の動作を表すフローチャートである。図6に示したフローチャートを参照して、情報処理装置10の動作について説明する。 まず、情報処理装置10は、モジュールが実行する処理手順を示す振る舞いモデルを、モジュール別に振る舞いモデル記憶部15に予め記憶しておく(ステップX1)。
続いて、情報処理装置10は、あるタイミングで、分析対象となるシステムにおけるモジュール間の接続関係を示す構造モデルを取得する(ステップX2)。ここで、あるタイミングとは、情報処理装置10の運用者が入力した指令を受け付けたときであってもよいし、予め設定された時刻に情報処理装置10が自律的に動作してもよい。
そして、情報処理装置10は、ステップX2で取得された構造モデルが示すシステムに含まれるモジュールに対応する振る舞いモデルを振る舞いモデル記憶部15から抽出し、抽出された複数の振る舞いモデル同士を当該構造モデルに基づいて組み合わせて、システムが実行する処理手順を示す統合モデルを生成する(ステップX3)。
そして、情報処理装置10は、各処理手順に関するディペンダビリティを算出する(ステップX4)。
本実施形態で説明した情報処理装置10に内包される構成の全部または一部は、ハードウェアで実現されてもよいし、あるいは、プロセッサに処理を実行させるプログラム(またはプログラムコード)で実現されてもよい。この場合、プロセッサは、不揮発性メモリなどの記録媒体からそのプログラムを読み出し実行する。
ここで、本実施形態の効果について説明する。本実施形態では、個々のモジュールの動作フローを示す振る舞いモデルと、モジュール間の接続関係を示す構造モデルとに基づいて、構造モデルが示すシステムの処理手順を示す統合モデルを生成することができる。また、統合モデルに基づいてディペンダビリティを算出することができる。
従って、システムを構成するモジュールと、それらの接続関係、そして各々のモジュールの動作フローが決まった段階で、システム全体の動作フローを作成することができる。そして、本実施形態の情報処理装置の運用者は、当該システムのディペンダビリティを評価することができる。
以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記以外の様々な構成を採用することもできる。
例えば、上記の実施形態では、統合モデルはシステムの復旧手順に関するものであったが、統合モデルの内容は、予め記憶しておく振る舞いモデルや、取得する構造モデルの内容に依存するものである。したがって、統合モデルは他のプロセス処理を示すものであっても構わない。
また、上記の実施形態では、構造モデル、振る舞いモデル、あるいは統合モデルはモデリング言語で記述されるように説明したが、必ずしもこれに限る必要はなく、他の言語で記述されても構わない。
また、上記実施形態の説明には、複数のフローチャートを用いており、それぞれに複数のステップを順番に記載してあるが、その記載の順番は、本発明の情報処理方法のステップを実行する順番を限定するものではない。このため、本発明の情報処理方法を実行するときには、その複数のステップの順番は内容的に支障しない範囲で変更することができる。
なお、当然ながら、上述した実施の形態および複数の変形例は、その内容が相反しない範囲で組み合わせることができる。また、上述した実施の形態および変形例では、各構成要素の機能などを具体的に説明したが、その機能などは本願発明を満足する範囲で各種に変更することができる。
10 情報処理装置
11 構造モデル取得部
12 統合モデル生成部
13 ディペンダビリティ算出部
14 構造モデル記憶部
15 振る舞いモデル記憶部
16 関係情報記憶部
111、112、113 モジュール

Claims (9)

  1. モジュールが実行する処理手順を示す振る舞いモデルを、前記モジュール別に記憶した記憶手段と、
    複数の前記モジュールから構成されるシステムにおける前記モジュール間の接続関係を示す構造モデルを取得する取得手段と、
    前記取得手段によって取得された前記構造モデルが示す前記システムに含まれる前記モジュールに対応する前記振る舞いモデルを前記記憶手段から抽出し、抽出された複数の前記振る舞いモデル同士を当該構造モデルに基づいて組み合わせて、前記システムが実行する処理手順を示す統合モデルを生成する生成手段と、
    を備えることを特徴とする情報処理装置。
  2. 請求項1に記載の情報処理装置であって、
    前記取得手段が、前記システムを構成する第1モジュールと第2モジュールとが多重系の接続関係にある前記構造モデルを取得したとき、
    前記生成手段は、前記第1モジュールに対応する第1の振る舞いモデルに含まれる処理から前記第2モジュールに対応する第2の振る舞いモデルに含まれる処理へと移行する処理手順を含む前記統合モデルを生成することを特徴とする情報処理装置。
  3. 請求項2に記載の情報処理装置であって、
    前記第1の振る舞いモデルは、前記第1の振る舞いモデルに含まれる処理へと移行する第1分岐方向と、前記第2の振る舞いモデルに含まれる処理へと移行する第2分岐方向と、を有する分岐点を含み、
    前記取得手段が、前記第1モジュールと前記第2モジュールとが多重系の接続関係にある前記構造モデルを取得したとき、
    前記生成手段は、前記分岐点において前記第2分岐方向を選択する処理手順を含む前記統合モデルを生成することを特徴とする情報処理装置。
  4. 請求項1乃至3いずれか一項に記載の情報処理装置であって、
    前記生成手段によって生成された前記統合モデルが示す処理手順に含まれる各々の処理の処理時間を取得し、取得した前記処理時間に基づいて当該統合モデルが示す処理手順の実行に要する所要時間を算出する処理時間算出手段を備えることを特徴とする情報処理装置。
  5. 請求項1乃至4いずれか一項に記載の情報処理装置であって、
    前記生成手段によって生成された前記統合モデルが示す処理手順に含まれる各々の処理の処理時間と成功確率とを取得し、取得した前記処理時間と前記成功確率とに基づいて当該統合モデルが示す処理手順の実行に要する所要時間の期待値を算出する期待値算出手段を備えることを特徴とする情報処理装置。
  6. 請求項1乃至5いずれか一項に記載の情報処理装置であって、
    前記統合モデルは、前記システムに含まれるいずれかの前記モジュールが故障してから当該システムが正常に戻るまでの復旧手順を示すことを特徴とする情報処理装置。
  7. 請求項1乃至6いずれか一項に記載の情報処理装置であって、
    前記振る舞いモデル、前記統合モデルまたは前記構造モデルは、モデリング言語で記述されていることを特徴とする情報処理装置。
  8. モジュールが実行する処理手順を示す振る舞いモデルを、前記モジュール別に記憶手段に記憶する記憶ステップと、
    複数の前記モジュールからなるシステムにおける前記モジュール間の接続関係を示す構造モデルを取得する取得ステップと、
    前記取得ステップで取得された前記構造モデルが示す前記システムに含まれる前記モジュールに対応する前記振る舞いモデルを前記記憶手段から抽出し、抽出された複数の前記振る舞いモデル同士を当該構造モデルに基づいて組み合わせて、前記システムが実行する処理手順を示す統合モデルを生成する生成ステップと、
    を備えることを特徴とする情報処理方法。
  9. コンピュータが読み出し可能な記憶媒体に格納されているプログラムであって、
    モジュールが実行する処理手順を示す振る舞いモデルを、前記モジュール別に記憶手段に記憶する記憶処理と、
    複数の前記モジュールからなるシステムにおける前記モジュール間の接続関係を示す構造モデルを取得する取得処理と、
    前記取得処理で取得された前記構造モデルが示す前記システムに含まれる前記モジュールに対応する前記振る舞いモデルを前記記憶手段から抽出し、抽出された複数の前記振る舞いモデル同士を当該構造モデルに基づいて組み合わせて、前記システムが実行する処理手順を示す統合モデルを生成する生成処理と、
    を前記コンピュータに実行させることを特徴とするプログラム。
JP2010039259A 2010-02-24 2010-02-24 情報処理装置、情報処理方法およびプログラム Active JP5458947B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010039259A JP5458947B2 (ja) 2010-02-24 2010-02-24 情報処理装置、情報処理方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010039259A JP5458947B2 (ja) 2010-02-24 2010-02-24 情報処理装置、情報処理方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2011175482A true JP2011175482A (ja) 2011-09-08
JP5458947B2 JP5458947B2 (ja) 2014-04-02

Family

ID=44688275

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010039259A Active JP5458947B2 (ja) 2010-02-24 2010-02-24 情報処理装置、情報処理方法およびプログラム

Country Status (1)

Country Link
JP (1) JP5458947B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06290036A (ja) * 1993-04-02 1994-10-18 Nippon Steel Corp デ−タ変換最適化装置
JP2000112737A (ja) * 1998-10-01 2000-04-21 Seiko Epson Corp プログラム作成装置
JP2001184204A (ja) * 1999-12-27 2001-07-06 Hitachi Ltd モジュール実行順序決定方法、電子システム及びそのための媒体
JP2007122650A (ja) * 2005-10-31 2007-05-17 Fujitsu Ltd サービス実装支援プログラムおよびサービス実装支援方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06290036A (ja) * 1993-04-02 1994-10-18 Nippon Steel Corp デ−タ変換最適化装置
JP2000112737A (ja) * 1998-10-01 2000-04-21 Seiko Epson Corp プログラム作成装置
JP2001184204A (ja) * 1999-12-27 2001-07-06 Hitachi Ltd モジュール実行順序決定方法、電子システム及びそのための媒体
JP2007122650A (ja) * 2005-10-31 2007-05-17 Fujitsu Ltd サービス実装支援プログラムおよびサービス実装支援方法

Also Published As

Publication number Publication date
JP5458947B2 (ja) 2014-04-02

Similar Documents

Publication Publication Date Title
JP4730433B2 (ja) 故障診断システム、情報更新装置およびプログラム
US9639454B2 (en) Computer-readable recording medium storing therein test data generating program, test data generating method, test data generating apparatus and information processing system
CN111610978A (zh) 一种小程序转换方法、装置、设备及存储介质
US20180174072A1 (en) Method and system for predicting future states of a datacenter
JP2011192184A (ja) 仮想コンピュータシステム、管理サーバ、仮想マシンの構築方法およびそのプログラム
JP2011129028A (ja) 総テスト時間を最小にするようにテストシナリオを最適化するテスト支援装置、テスト装置、テスト支援方法及びコンピュータプログラム
US20210149723A1 (en) Method and apparatus for microservice architecture reconfiguration
JP5910499B2 (ja) 拡張性評価装置、拡張性評価方法および拡張性評価プログラム
JP6879625B2 (ja) プログラマブルコントローラ、管理装置および制御システム
US20160306714A1 (en) Checkpointing higher order query operators
CN101739406A (zh) 双控制器上文件服务操作的同步方法
Theelen et al. Performance model checking scenario-aware dataflow
JP2006285474A (ja) 並列計算機及びその制御方法
JP5458947B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP6016128B2 (ja) 可用性モデル生成支援装置、可用性モデル生成支援方法、およびプログラム
CN110908644B (zh) 状态节点的配置方法、装置、计算机设备和存储介质
JP5672521B2 (ja) コンピュータシステム、およびそのチェックポイントリスタート方法
JP6175958B2 (ja) メモリダンプ方法及びプログラム、並びに、情報処理装置
JP2008305021A (ja) 情報処理装置及びアプリケーション管理方法
JP2005092708A (ja) ソフトウェア更新システム及びソフトウェア更新方法並びにコンピュータプログラム
JP5716469B2 (ja) ラッパープログラム及び集積回路装置
JP5240200B2 (ja) データ処理装置および方法
WO2012056611A1 (ja) 可用性モデル生成装置
JP2012164024A (ja) データフローグラフ生成装置、データフローグラフ生成方法及びデータフローグラフ生成プログラム
KR101099491B1 (ko) 소모전력 분석방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130110

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130821

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131001

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131202

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131217

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131230

R150 Certificate of patent or registration of utility model

Ref document number: 5458947

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150