"プログラムから情報を抽出し、その抽出情報を用いてプログラム分析に必要な処理を施し分析結果を表示するプログラム可視化装置であって、前記プログラムを解析してノードとリンクからなるグラフ構造を出力するプログラム解析手段と、前記グラフ構造に分析処理を施して分析結果を出力する構造分析手段と、前記グラフ構造とその分析結果とを所定の描画形式により画像表示装置に表示する画像描画手段と、の3つの手段を備え、これらの3つの手段は、コンピュータを介して実行されるソフトウェアであって、且つそれぞれ独立して部品化されて、各手段単位で変更可能に構成されていることを特徴とするプログラム可視化装置。請求項1において、前記プログラム解析手段は、種類の異なる複数のプログラムをそれぞれ解析してグラフ構造を作成する複数のプログラム解析アルゴリズムを有し、これらのプログラム解析アルゴリズムがそれぞれ部品化されて、各プログラム解析アルゴリズム単位で変更可能に構成され、前記構造分析手段は、前記グラフ構造に対してそれぞれ異なる分析手法を実行するための複数の構造分析アルゴリズムを有し、これらの構造分析アルゴリズムがそれぞれ部品化されて、各構造分析アルゴリズム単位で変更可能に構成され、前記画像描画手段は、それぞれ異なる描画形式を実行するための複数の描画アルゴリズムを有し、これらの描画アルゴリズムがそれぞれ部品化されて、各描画アルゴリズム単位で変更可能に構成されているプログラム可視化装置。請求項1において、前記構造分析手段は、前記グラフ構造に対してそれぞれ異なる分析手法を実行するため複数の構造分析アルゴリズムを有し、前記プログラム可視化装置は、分析対象プログラムの特性から、前記構造分析アルゴリズムの各々が前記グラフ構造に対して適用可能であるか否か判別する構造分析アルゴリズム適否判別手段を備え、前記画像表示装置は、一つの画面に、少なくとも、i前記グラフ構造とそのグラフ構造に対して適用された構造分析アルゴリズムの分析結果とを前記画像描画手段の描画形式を介して合成表示する第1のウィンドウと、ii前記複数の構造分析アルゴリズムの名称を表示し、且つ表示される複数の構造分析アルゴリズムの名称から画面を通して所望の構造分析アルゴリズムを指定する機能、および前記構造分析アルゴリズム適否判別手段による判別結果を表示する機能を有する第2のウィンドウとが設定されているプログラム可視化装置。請求項3において、前記画像描画手段は、それぞれ異なる描画形式を実行するための複数の描画アルゴリズムを有し、前記プログラム可視化装置は、前記構造分析手段の分析手法の特性から、前記描画アルゴリズムの各々で実行される描画形式が適用可能であるか否か判別する描画形式適否判別手段を備え、前記画像表示装置は、一つの画面に、前記第1、第2のウィンドウに加えて、iii前記描画アルゴリズムで実行される描画形式の名称を表示し、且つ表示される複数の描画形式の名称から画面を通して所望の描画形式を指定する機能、および前記描画形式適否判別手段による判別結果を表示する機能を有する第3のウィンドウが設定されているプログラム可視化装置。請求項1ないし4のいずれか1項において、前記構造分析手段は、分析対象プログラムのグラフ構造の特性を分類するグラフ特性判定手段を備えるプログラム可視化装置。請求項5において、前記画像描画手段は、前記グラフ特性判定手段の判定結果に基づいて、画面上の前記構造分析手段の分析手法の名称表示の形態を変えるプログラム可視化装置。請求項6において、前記プログラム解析手段は、分析対象プログラムの種類に応じて、変数をノードとし、変数間の代入関係をリンクとして前記プログラムを解析するか、或いは関数をノードとし、関数間の呼び出し関係をリンクとして前記プログラムを解析するプログラム可視化装置。請求項6において、前記グラフ特性判定手段は、前記分析対象プログラムが複雑ネットワーク特性を有しているか否かを、前記グラフ構造に基づいて判定する複雑ネットワーク判定手段よりなるプログラム可視化装置。請求項1において、前記構造分析手段は、少なくとも一つの構造分析アルゴリズムを備えるとともに、前記構造解析アルゴリズムが適用可能なネットワーク特性を記憶する構造分析アルゴリズム属性記憶手段を有するプログラム可視化装置。プログラムから情報を抽出し、その抽出情報を用いてプログラム分析に必要な処理を施し分析結果を表示するプログラム可視化装置であって、前記プログラムを解析してノードとリンクからなるグラフ構造を出力するプログラム解析手段と、前記グラフ構造に分析処理を施して分析結果を出力する構造分析手段と、前記グラフ構造とその分析結果とを所定の描画形式により画像表示装置に表示する画像描画手段と、の3つの手段を備え、前記構造分析手段は、前記グラフ構造に対してそれぞれ異なる分析手法を実行するため複数の構造分析アルゴリズムを有し、前記プログラム可視化装置は、分析対象プログラムの特性から、前記構造分析アルゴリズムの各々が前記グラフ構造に対して適用可能であるか否か判別する構造分析アルゴリズム適否判別手段を備え、前記画像表示装置は、一つの画面に、少なくとも、i前記グラフ構造とそのグラフ構造に対して適用された構造分析アルゴリズムの分析結果とを前記画像描画手段の描画形式を介して合成表示する第1のウィンドウと、ii前記複数の構造分析アルゴリズムの名称を表示し、且つ表示される複数の構造分析アルゴリズムの名称から画面を通して所望の構造分析アルゴリズムを指定する機能、および前記構造分析アルゴリズム適否判別手段による判別結果を表示する機能を有する第2のウィンドウとが設定されていることを特徴とするプログラム可視化装置。請求項10において、前記画像描画手段は、それぞれ異なる描画形式を実行するための複数の描画アルゴリズムを有し、前記プログラム可視化装置は、前記構造分析手段の分析手法の特性から、前記描画アルゴリズムの各々で実行される描画形式が適用可能であるか否か判別する描画形式適否判別手段を備え、前記画像表示装置は、一つの画面に、前記第1、第2のウィンドウに加えて、iii前記描画アルゴリズムで実行される描画形式の名称を表示し、且つ表示される複数の描画形式の名称から画面を通して所望の描画形式を指定する機能、および前記描画形式適否判別手段による判別結果を表示する機能を有する第3のウィンドウが設定されているプログラム可視化装置。請求項10又は11において、前記画像表示装置は、前記第2のウィンドウにおいて、分析対象プログラムに適用できない構造分析アルゴリズムについては、その構造分析アルゴリズムの名称に、適用不可であることを識別させる情報を重ね合わせて表示するプログラム可視化装置。請求項10又は11において、前記画像表示装置は、前記第2のウィンドウにおいて、分析対象プログラムに適用可能な構造分析アルゴリズムと適用できない構造分析アルゴリズムとを、少なくとも色相、明度、彩度のいずれかを変更して表示するプログラム可視化装置。請求項10ないし13のいずれか1項において、前記画像表示装置は、前記第2のウィンドウにおいて、分析対象プログラムにおいて適用可能な構造分析アルゴリズムと適用できない構造分析アルゴリズムとを、表示順序を変更して表示するプログラム可視化装置。請求項10ないし14のいずれか1項において、前記画像表示装置は、前記第2のウィンドウにおいて、分析対象プログラムに適用できない構造分析アルゴリズムを、画面を通して選択不可とする機能を設定したプログラム可視化装置。請求項11において、前記画像表示装置は、前記第3のウィンドウにおいて、分析対象プログラムに適用できない描画形式については、その描画形式の名称に、適用不可であることを識別させる情報を重ね合わせて表示するプログラム可視化装置。請求項11において、前記画像表示装置は、前記第3のウィンドウにおいて、分析対象プログラムに適用可能な描画形式と適用できない描画形式とを、少なくとも色相、明度、彩度のいずれかを変更して表示するプログラム可視化装置。請求項10ないし17のいずれか1項において、前記画像表示装置は、前記第1、第2のウィンドウ或いは前記第1、第2、第3のウィンドウと共に1画面に分析対象プログラムのネットワーク特性を表示するプログラム可視化装置。I従来は、プログラム可視化装置として、分析対象プログラムを解析してグラフ構造を作成する構造作成アルゴリズムや、その構造を分析する構造分析アルゴリズムや、それらの構造や構造分析結果を図式化する図式化アルゴリズムが一連となって不離一体に開発されていた。分析対象となるプログラムが多種多様になるにつれ、プログラム可視化装置の開発効率化が必要となる。特に上記した構造作成アルゴリズム、構造分析アルゴリズムおよび図式化アルゴリズムに関しては、それらのアルゴリズムのいずれかが変更されると、そのたびに新規なプログラム可視化装置を開発することは、プログラムの開発効率が低下してしまうので、その改善が望まれていた。IIまた、近年の大規模データ分析技術の進展に伴って、様々な構造分析アルゴリズムが提案されている。構造分析アルゴリズムの中には、例えば、いわゆる複雑ネットワークの特性を持っているグラフ構造にのみ適用可能なコミュニティ構造分析の様に、特定のネットワーク特性にのみ適用可能な構造分析アルゴリズムが存在する。分析対象プログラムの特性に適用可能な構造分析アルゴリズムの選定には、専門知識が必要となるため、利用者に対応関係を明確に提示することが望まれる。上記したIおよびに関する要求を満足させる従来技術は、上記特許文献1から特許文献4を含め今まで提案されていない。すなわち、従来のプログラム可視化装置は、プログラムの解析から表示までのソフトウェアが一連の流れで構成されており、その一部分を変更した場合には全体のソフトウェアを作成し直さなければならない。また、従来術では、分析対象プログラムのネットワーク特性に応じて適用可能な構造分析アルゴリズムを理解できるように利用者に提示する配慮がなされていない。本発明は、上記のような課題を解決するためになされたものであり、例えば、組み込みソフトウェアなどを検証のため分析解析する場合に、上記IIIの少なくともいずれか一つの要求を満足させて分析作業効率を高めることができるプログラム可視化装置を提供することにある。本発明に係るプログラム可視化装置は、上記Iの目的を実現させるために、プログラムを解析してノードとリンクからなるグラフ構造を出力するプログラム解析手段と、前記グラフ構造に分析処理を施して分析結果を出力する構造分析手段と、前記グラフ構造とその分析結果とを所定の描画形式により画像表示装置に表示する画像描画手段と、の3つの手段を備え、これらの3つの手段は、コンピュータを介して実行されるソフトウェアであって、且つそれぞれ独立して部品化されて、各手段単位で変更可能に構成されている。上記IIの目的を実現させるために、プログラムを解析してノードとリンクからなるグラフ構造を出力するプログラム解析手段と、前記グラフ構造に分析処理を施して分析結果を出力する構造分析手段と、前記グラフ構造とその分析結果とを所定の描画形式により画像表示装置に表示する画像描画手段と、の3つの手段を備え、前記構造分析手段は、前記グラフ構造に対してそれぞれ異なる分析手法を実行するため複数の構造分析アルゴリズムを有し、前記プログラム可視化装置は、分析対象プログラムの特性から、前記構造分析アルゴリズムの各々が前記グラフ構造に対して適用可能であるか否か判別する構造分析アルゴリズム適否判別手段を備え、前記画像表示装置は、一つの画面に、少なくとも、i前記グラフ構造とそのグラフ構造に対して適用された構造分析アルゴリズムの分析結果とを前記画像描画手段の描画形式を介して合成表示する第1のウィンドウと、ii前記複数の構造分析アルゴリズムの名称を表示し、且つ表示される複数の構造分析アルゴリズムの名称から画面を通して所望の構造分析アルゴリズムを指定する機能、および前記構造分析アルゴリズム適否判別手段による判別結果を表示する機能を有する第2のウィンドウとが設定されている。本発明に係る前者のプログラム可視化装置によれば、プログラムを解析してグラフ構造を作成するプログラム解析アルゴリズム、そのグラフ構造を分析する構造分析アルゴリズム、その分析結果を表示する描画アルゴリズムに関するソフトウェアのいずれかを変更した場合でも、他のソフトウェアは、その変更の影響を受けずに再利用することができる。また、後者のプログラム可視化装置によれば、分析対象プログラムの特性に応じて、適用可能な構造分析アルゴリズムを利用者に容易に理解させることができる。本発明の実施の形態を、以下の実施例に基づき説明する。実施例図2は、本発明の一実施例に係るプログラム可視化装置:ソフトウェア可視化装置100の構成図である。プログラム可視化装置100は、例えば、種々の制御装置に組み込まれるプログラムを分析して可視化するためのもので、プログラム分析可視化の実行本体となるコンピュータ1と、コンピュータ1で実行される可視化結果を表示するディスプレイ9と、利用者からの操作を受け付けるマウス7およびキーボード8とを備えている。コンピュータ1は、分析対象となるプログラムを記憶するデータベース2と、プログラム可視化装置の処理手順アルゴリズムを記憶するメモリ3と、ソフトウェア可視化装置の処理手順を実行するプロセッサ4と、ネットワークインタフェース5とを備えている。コンピュータ1は、ネットワークインタフェース5を用いてネットワーク10を経由して他のコンピュータやデータベースと接続する。図3は、ソフトウェア可視化装置100の処理の流れを示すブロック図である。データベース2は分析対象となるプログラムA21と、プログラムB22とを備える。本実施例では、一例として、2つの分析対象プログラムをデータベース2に備えるが、その数は任意である。メモリ3は、プログラム可視化装置のアルゴリズムとして、分析対象プログラムを情報図5、図7参照を抽出して、その情報を解析してノードとリンクの集合からなるグラフ構造を出力するプログラム解析層プログラム解析手段31と、グラフ構造に基づいて分析処理を行って分析結果を出力する構造分析層構造分析手段32と、グラフ構造とその分析結果とを所定の描画形式により画像表示装置に表示する画像描画層画像描画手段33とを備える。画像描画層33は、マウス7により利用者が望む分析手法や画像表示方式の選択操作を受け付けるとともに、その選択操作に基づくプログラム分析結果をディスプレイ9に出力する。プログラム解析層31と構造分析層32と画像描画層33は、それぞれ独立して部品化されたソフトウェアにより構成され、各部品単位で変更可能に構成されている。ここで、変更とは、ソフトウェアの内容変更のほかに、追加、削除も含むものである。図4は、プログラム解析層31の詳細な構成を示す図である。プログラム解析層31は、プログラムA21用のプログラム解析手段であるプログラムA解析部311と、プログラムB用のプログラム解析手段であるプログラムB解析部312とを備える。ここで、プログラムA解析部311で行われるプログラム解析の一例を図5及び図6を参照して説明する。図5は、プログラムA21の一例に係る具体的構成を示す図である。プログラムA21のソースコード211は複数の関数を備えており、関数間の呼び出しによってプログラムを構成している。図6は、プログラムA解析部311の出力結果であるプログラムAグラフ構造3111を示す図である。プログラムA解析部311のアルゴリズムは、ソースコード211図5における関数をノード、関数間の呼び出し関係をリンクとしてプログラム解析を行い、解析結果をプログラムAのグラフ構造3111図6として出力することを内容とする。一例をあげれば、図5におけるソースコード211の1行目~3行目は、関数aが関数eを呼び出していることを示している。この場合には、前者関数aを始点ノード、後者関数eを終点ノードとする。それ以降の行についても同様の解析が行われ、それぞれの関数間呼び出しについてリンクIDリンク識別番号が付される。リンクIDの付け方は種々の態様が考えられる。ここでは、終点ノードの変数アルファベットの若い順を第1優先とし、次いで始点ノードの変数アルファベットの若い順を第2優先としている図6参照。その結果、上記した関数aが関数eを呼び出しているソースコード211は、図6のプログラムAグラフ構造3111において、リンクID4として、関数間の呼び出し関係が示されている。次に、プログラムB解析部312で行われるプログラム解析の一例を図7及び図8を参照して説明する。図7は、プログラムB22の一例に係る具体的構成を示す図である。プログラムB22のソースコード221は複数の関数を備えている。ただし、関数間の呼び出し関係ではなく、変数の代入関係によってプログラムを構成している。図8は、プログラムB解析部312の出力結果であるプログラムBグラフ構造3121を示す図である。プログラムB解析部312のアルゴリズムは、ソースコード221図7における変数をノード、変数間の代入関係をリンクとしてプログラム解析を行い、解析結果をプログラムBグラフ構造3121図8として出力することを内容とする。一例をあげれば、ソースコード221の2行目は、変数aに基づいて変数bが演算されていることを示している。この場合には、前者変数aを始点ノード、後者変数bを終点ノードとする。それ以降の行についても同様の解析が行われ、それぞれの変数間の代入関係についてリンクIDリンク識別番号が付される。リンクIDの付け方は、既述した関数間呼び出し同様に行われる。その結果、上記した変数aに基づいて変数bが演算されているは、図8のプログラムBグラフ構造3121において、リンクID1としての内容を示している。以上のように、プログラム可視化装置100に複数のプログラム解析層31として、異なる複数のプログラム解析部、例えばプログラムA解析部311およびプログラムB解析部312を設け、プログラム解析層31を構造分析層32と画像描画層33に対してそれぞれ独立して部品化することによって、異なる構造を持つプログラムに対してはプログラム解析部を変更するのみで対応可能である。したがって、プログラムの種類に応じてプログラム解析部を変更追加、削除を含むする場合には、プログラム解析層31にて、各プログラム解析部単位で変更すれば良く、その変更が他の構造分析層32や画像描画層33には影響を与えないので、プログラム可視化装置の再利用性および開発効率が向上する。なお、構造分析層32や画像描画層33に関しても独立して部品化されているので、それぞれの層単位で変更可能であるこの点については後述される。図9は、構造分析層32の詳細な構成を示す図である。構造分析層32は、グラフ特性判定部グラフ特性判定手段320とプログラム構造分析部322とを備えている。グラフ特性判定部は、複雑ネットワーク判定部321を備えている。図10は、複雑ネットワーク判定部321の詳細な構成を示す図である。複雑ネットワークは、現実世界に存在する多様なネットワークネットワークは、ノードとリンクの集合よりなるグラフ構造で示されるにおいて、一定の共通する性質としてスケールフリー性次数分布のべき乗則、スモールワールド性、およびクラスター性を有するものであり、近年、現実世界の様々な現象を説明するのに使用され周知な学問であるので、詳細な説明は省略する。複雑ネットワーク判定部321は、プログラム解析層31で解析されたグラフ構造の次数分布がべき乗則にしたがっているか否かを判定するスケールフリー性判定部3211と、任意に選択した2つのノードが最短で幾つの仲介ノードおよびリンクを介して繋がりを持つのか求めノード間距離、これをノードの組み合わせを変えて全ノードに実行してその平均最短距離を求め、その平均最短距離がノード数の大きさに比べて小さい値を取っているか否かを判定するスモールワールド性判定部3212と、グラフ構造のクラスター係数の値を評価するクラスター性判定部3213を備える。図11は、複雑ネットワーク判定部321の処理の流れを示す図である。ステップS32101において処理が開始される。ステップS32102においてスケールフリー性判定部3211が実行され、スケールフリー性の有無が判定される。スケールフリー性有りと判定された場合には、ステップS32103へ進み、無しと判定された場合には、ステップS32106へ進み処理が終了する。ステップS32103においてスモールワールド性判定部3212が実行され、スモールワールド性の有無が判定される。スモールワールド性有りと判定された場合には、ステップS32104へ進み、無しと判定された場合には、ステップS32106へ進み処理が終了する。ステップS32104においてクラスター性判定部3213が実行され、クラスター性の有無が判定される。クラスター性有りと判定された場合にはステップS32105へ進み、無しと判定された場合にはステップS32106へ進み処理が終了する。ステップS32105に進んだ場合には、このステップにて、分析対象プログラムのグラフ構造が複雑ネットワークであると判定され、ステップS32106へ進み処理が終了する。図12は、スケールフリー性判定部3211の処理の流れを示す図である。スケールフリー性は、ノードが次数kを持つ確率pkの確率分布がpk∝k-γのべき乗則になると表現されるものであり、その判定のために、次の処理が行われる。ステップS32111において処理が開始される。ステップS32112では分析対象プログラムの各ノードに接続するリンク数である次数に基づいて、次数とノード数の対応関係である次数分布を取得する。ステップS32113では両対数における次数分布の相関係数を演算する。ステップS32114では、相関係数が所定の閾値を上回っているか否かを判定する。上回っている場合にはステップS32115に進み、上回っていない場合にはステップS32116に進み処理を終了する。ステップS32115では分析対象プログラムのグラフ構造がスケールフリー性を備えていると判定され、ステップS32116へ進み処理が終了する。スモールワールド性判定部3212により行われる判定処理は、そのフローチャートによる図示を省略するが、概略次のように行なわれる。すなわち、ノード数を求めるステップと、任意の2つのノード間の平均最短距離を求めるステップと、上記のノード間平均最短距離がノード数の大きさに比べて小さい値を取っているか否かを判定し、小さい値を取っている場合には、スモールワールド性を有するものと判定するステップを有する。クラスター性判定部3212により行われる判定処理についても、そのフローチャートによる図示を省略するが、概略次のように行なわれる。すなわち、グラフ構造のノードおよびリンクの集合からクラスター係数Cを算出するステップと、クラスター係数が閾値より大きいか否か判定し、大きい場合には、クラスター性を有するものと評価するステップを有する。図13は、構造分析層32におけるプログラム構造分析部322の詳細な構成を示す図である。プログラム構成分析部322は、それぞれ独立して部品化されている複数種類の分析部よりなる。これらの分析部は、それぞれ分析アルゴリズムにより構成され、次のようなものがある。例えば、iノード及びリンクの集合体でネットワークよりなるグラフ構造において、特定の共通のノード及びリンクよりなるコミュニティ組織を分析するコミュニティ構造分析部3221と、iiネットワークを構成するノードのうち、重要度の高いノードを分析するノード重要度分析部3222と、iiiある特定ノードに着目して、そのノードが他のノードに及ぼす影響範囲を分析するノード影響範囲分析部3223と、ivある特定のノードから他の特定ノードに到るまでにリンク繋がりのある幾つかの仲介ノード及びリンクを経由する場合にその最短経路を分析するノード間最短経路分析部3224と、v複数のプログラムについてグラフ構造解析して、それらのグラフ構造の類似性を分析する構造類似性分析部3225と、媒介中心性、すなわち、そのノードを通過しないと他のノードに到達できない度合いを分析する媒介中心性分析部3226が用意されている。さらに、プログラム構造分析部322には、上記列挙した各種分析部構造分析アルゴリズムの属性を記憶する構造分析アルゴリズム属性記憶部3227を備える。これらの各種分析部構造分析アルゴリズム3221~3226は、図1に示すディスプレイ画面91の分析手法表示部913を通して選択的に指定可能であるディスプレイ画面91の詳細は後述する。プログラム構造分析部322となる複数の構造分析アルゴリズム3221~3226は、それぞれ独立しており、またプログラム解析層31や画像描画層33とも独立している。したがって、構造分析アルゴリズムを変更追加,削除を含むする場合でも、プログラム解析層31および画像描画層33については再利用することができ、プログラム可視化装置の開発効率を向上させることができる。図14は、構造分析アルゴリズム属性記憶部3227の詳細なデータ構成32271を示す図である。構造分析アルゴリズム属性記憶部3227のデータ構成32271は、分析アルゴリズムのIDと、そのアルゴリズムの名称と、適用可能なグラフ構造とで構成されている。例えば、ID1のコミュニティ構造解析アルゴリズムは、複雑ネットワーク専用プログラムのグラフ構造に適用可能であり、ID4のノード間最短経路分析は、ネットワーク専用プログラムに限らず汎用的なグラフ構造に適用することができる。図15は、画像描画層33の詳細な構成を示す図である。画像描画層33は、分析対象プログラムのグラフ構造を指定の描画アルゴリズム本例では、有効グラフ、依存関係行列、ツリーのいずれかの描画アルゴリズムで描画するグラフ図描画部331と、ii分析対象プログラムの構造分析アルゴリズム図13の3221~3226:分析手法の名称を一覧表示して作成する分析手法表示作成部3321と、iii上記した描画アルゴリズム3311~3313:描画形式の名称を一覧表示して作成する描画形式表示作成部3322と、ディスプレイ9の画面を通して分析手法や描画形式に関して利用者の選択指定を受け付けるユーザインタフェース部332と、を備える。本実施例のグラフ図描画部331を構成する描画アルゴリズムは、ノードとリンクからなるグラフ構造をリンクに方向性を与えて表示する有向グラフ描画アルゴリズム有向グラフ描画部3311と、ノード間の依存関係を行列方式で表示する依存関係行列描画アルゴリズム依存関係行列描画部3312と、ノードの関係を、リンクを介してツリー状に描画するツリー描画部3313とを備えている。これらの各種描画部描画アルゴリズム3311~3313は、図1に示すディスプレイ画面91の描画形式表示部924を通して選択的に指定可能であるディスプレイ画面91の詳細は後述する。グラフ図描画部331を構成する複数の描画アルゴリズム3311~3313は、それぞれ独立しており、またプログラム解析層31やグラフ構造分析層32とも独立している。したがって、描画アルゴリズムを変更追加,削除を含むする場合でも、プログラム解析層31、グラフ構造分析層構造分析部32ついては再利用することができ、プログラム可視化装置の開発効率を向上させることができる。分析手法表示作成部3321は、グラフ構造を分析する構造分析アルゴリズム分析手法の一覧表示を作成するほかに、分析対象プログラムの特性から、各構造分析アルゴリズムが、解析されたグラフ構造に対して適用可能であるか否か判別する構造分析アルゴリズム適否判別機能構造分析アルゴリズム適否判別手段を有する。この判別は、図14の構造分析アルゴリズム属性記憶部3227のデータ構成32271に基づき行なわれ、その判別結果が構造分析アルゴリズムの一覧表示作成に反映される。図16は、分析手法表示作成部3321で実行される構造分析アルゴリズム適否判別機能の処理の流れを示す図である。分析手法表示作成部3321は、図1の分析手法表示部913に示すような構造分析アルゴリズム分析手法一覧表示を作成した後に、ステップS33211から構造分析アルゴリズム適否判別処理を開始する。ステップS33212では、構造分析アルゴリズムのIDに1をセットする。ID1,ID2,ID3...IDnは、例えば図14に示す一覧表示の分析アルゴリズム名に対応する。ステップS33213では、グラフ特性判定部320から現在の分析対象プログラムのネットワーク特性を取得する。ステップS33214では、構造分析アルゴリズム属性記憶部3227のデータに基づいて、現在のIDの構造分析アルゴリズムが分析対象プログラムのネットワーク特性に対して適用可能か否かを判定する。適用可能な場合はステップS33215に進み、適用不可の場合にはステップS33216に進む。ステップS33215では、現在のIDの構造分析アルゴリズムが適用可能であるとして、その旨を、ディスプレイ9図1の分析手法表示部923を介して表示する。ステップS33216では、現在のIDの構造分析アルゴリズムが適用不可であるとして、その旨を、ディスプレイ9図1の分析手法表示部923を介して表示する。ステップS33217では、構造分析アルゴリズムが最終IDであるか否かを判定する。最終IDであった場合にはステップS33219に進み処理を終了し、最終IDではない場合にはステップS33218に進む。ステップS33218ではIDを1加算し、ステップS33214に進む。以上の構造分析アルゴリズムの適否の判別結果は、次に述べるプログラム可視化装置100のディスプレイの画面表示に反映される。描画形式表示作成部3322は、描画形式の名称の一覧表示を作成するほかに、各描画形式図15の描画アルゴリズム3311~3313が構造分析層32で実行されたグラフ構造分析に対して適用可能であるか否か判別する描画形式適否判別機能描画形式適否判別手段を有する。この判別結果は、描画アルゴリズム描画形式の一覧表示作成に反映される。図1は、本構成によるプログラム可視化装置100によってプログラムA21の分析結果をディスプレイ9に表示した画面91を示す図である。図示のように、1つの画面91に、グラフ構造表示部第1のウィンドウ911と、分析対象プログラム表示部912と、分析手法表示部第2のウィンドウ913と、描画形式描画手法表示部第3のウィンドウ914とが設定されている。グラフ構造表示部第1のウィンドウ911は、図15に示すグラフ図描画部331により作成される。図1では、一例として、グラフ構造表示部911には、プログラムAの分析結果として、ノード影響範囲が有向グラフ形式で表示されている。マウスカーソルがノードdを指しているため、ノードdの変更に影響を受ける、リンクで接続された変数が黒く強調表示されている。すなわち、グラフ構造表示部第1ウィンドウ911には、プログラム解析結果のグラフ構造とそのグラフ構造に対して適用された構造分析アルゴリズムの分析結果とを、画像描画層33により実行される指定の描画形式を介して合成表示される。分析対象表示部912には、一例として、分析対象プログラム名プログラムAと、グラフ構造の特性非複雑ネットワークが表示されている。分析手法表示部第2のウィンドウ913には、構造分析に用いる分析手法構造分析アルゴリズムの名称が表示されている。さらに、分析手法表示部913には、一覧表示される複数の分析手法構造分析アルゴリズムの名称から画面を通して所望の分析手法を指定する機能、および分析手法表示作成部構造分析アルゴリズム適否判別手段3321による判別結果図15、図16参照を表示する機能を有する。例えば、分析手法表示部第2ウィンドウ913における所望の分析手法を指定する機能としては、図1に示すように所望の分析手法の指定マーク入力部をマウスポインタによりクリックする方式図1では、ノード影響範囲分析の指定マーク入力部をクリックしているがある。指定の仕方は、上記指定マーク入力部に代えて、所望の分析手法の名称をダブルクリックしたり、或いは各分析手法の名称がボタン表示で示され、これをクリックするなどしてもよい。上記したグラフ構造表示部第1ウィンドウ911には、分析手法表示部第2ウィンドウ913で指定した分析手法の分析結果がグラフ構造と合わせて表示される。本実施例では、分析手法表示作成部3321図15により実行される分析アルゴリズム適否判別結果は、その分析アルゴリズム分析手法の名称に重ね合わせて表示される。例えば、図1では、一例として、分析対象プログラムAグラフ特性:非複雑ネットワークについては、コミュニティ構造分析およびノード重要度分析が適用不可として、それらの名称の上に取り消し線が引かれる。適用可の分析アルゴリズムについては、取り消し線無しの状態でそのまま表示される。さらに、本実施例では、分析対象プログラムにおいて適用可能な分析アルゴリズムと適用できない分析アルゴリズムとを、表示順序を変更して表示する。図1では、表示順序変更後の画面を示しており、分析手法適用不可の分析手法を第2ウィンドウ912内の下位位置に移動させている。なお、本実施例は表示手法の一例であり、その表示手法を実施例のものに限定されるものではない。例えば、分析対象プログラムに適用可能な分析手法と適用不可の分析手法とを、少なくとも色相、明度、彩度のいずれかを用いて識別表示してもよい。描画形式表示部第3のウィンドウ914には、指定対象となる描画形式の一覧が示されている。ここでは、一例として、有効グラフ、ツリー、依存関係行列の3つの描画形式を一覧表示している。この描画形式表示部914は、描画形式の一覧表示のほかに、次のような機能も有する。一つは、一覧表示される複数の描画形式の名称から画面を通して所望の描画形式を指定する機能を有する。この指定の仕方は、上記した分析手法一覧の中から所望の分析手法を指定する方式と同様に行なえばよい。もう一つは、描画形式表示作成部3322図15で実行された描画形式適否判別の結果を、描画形式一覧表示に反映させて表示する機能を有する。この場合にも、既述した分析アルゴリズムの適否同様に、取消し線、網掛け、色相、明度、彩度のいずれかを用いて識別表示してもよい。さらに、適否判別結果に応じて表示優先順序を変えてもよい。本実施例で示すように、画面表示を通して、i分析対象プログラムに適用できる分析手法と適用できない分析手法との表示方法を切り替えることによって、さらに、iiグラフ構造に応じて描画が可能な描画形式と不可の描画形式の表示方法を切り替えることにより、グラフ理論や統計分析の専門知識を持たない利用者でも適切な分析手法、描画形式を選択することができる。図17は、本構成によるプログラム可視化装置100によってプログラムB22の分析結果をディスプレイ9に表示した画面92を示す図である。画面92は、グラフ構造表示部921と、分析対象プログラム表示部922と、分析手法表示部923と、描画形式表示部924とで構成されている。グラフ構造表示部921には、プログラムBの分析結果として、コミュニティ構造が有向グラフ形式で表示されている。分析対象表示部922には、分析対象プログラム名プログラムBと、グラフ構造の特性複雑ネットワークが表示されている。分析手法表示部923には、構造分析に用いる分析手法が示されている。プログラムBは複雑ネットワークであり、本実施例では全ての分析手法が選択可能となっている。描画形式表示部924には、描画形式の一覧が示されている。これらの表示部921~924の表示の形態及び機能は、図1の表示部911~914と同様であるので、説明を省略する。なお、図1の例では、分析手法としてノード影響範囲分析のグラフ構造を有向グラフで表示したものを例示し、図17の例では、分析手法としてコミュニティ構造分析を有向グラフで表示したものを例示し、その他の分析手法や描画形式によるグラフ構造分析の描画表示について図示省略している。その理由は、その他の分析手法や描画形式も、それ自体は周知な事項であり、描画作成自体は、本明細書に具体的例示を示さなくても、当業者であれば容易に実施可能なものであるので、図示省略したものである。ちなみに、依存関係行列の描画については、本明細書の従来技術で紹介した特許文献4に開示されている。"