複数の要素ブロックで構成され、いずれかの要素ブロックに変数が含まれるプログラムを解析し、前記プログラムに含まれる変数ごとに、変数と当該変数が含まれる1つ以上の要素ブロックとを対応付けるプログラム解析対応付け部と、前記プログラム解析対応付け部による変数と要素ブロックとの対応付けが示される対応付け情報を記憶する対応付け情報記憶部と、前記プログラムの実行結果の少なくとも一部が所定の規約に違反し、当該違反の直接の原因となっている要素ブロックとして抽出された直接原因要素ブロックと前記対応付け情報において対応付けられている変数がある場合に、前記直接原因要素ブロックと対応付けられている変数と前記対応付け情報において対応付けられている他の要素ブロックのうち、前記プログラムにおいて前記直接原因要素ブロックよりも前に記述されている1つ以上の要素ブロックを先行要素ブロックとして抽出する要素ブロック抽出部とを有することを特徴とする情報処理装置。前記要素ブロック抽出部は、抽出した先行要素ブロックを解析して、抽出した先行要素ブロックの中から、前記違反の根本の原因を作り出した根本原因要素ブロックを抽出することを特徴とする請求項1に記載の情報処理装置。前記要素ブロック抽出部は、先行要素ブロックの抽出に用いられた変数を原因変数として抽出するとともに、前記根本原因要素ブロックで行われる前記原因変数を用いた演算の内容及び前記根本原因要素ブロックでの前記原因変数の値の少なくともいずれかを抽出することを特徴とする請求項2に記載の情報処理装置。前記要素ブロック抽出部は、先行要素ブロックの抽出に用いられた変数を原因変数として抽出するとともに、先行要素ブロックごとに、先行要素ブロックで行われる前記原因変数を用いた演算の内容及び先行要素ブロックでの前記原因変数の値の少なくともいずれかを抽出することを特徴とする請求項1~3のいずれかに記載の情報処理装置。前記プログラム解析対応付け部は、前記プログラムに含まれる変数ごとに、変数と当該変数が含まれる1つ以上の要素ブロックとを対応付けるとともに、対応付けられた要素ブロックで行われる当該変数を用いた演算の内容及び対応付けられた要素ブロックでの当該変数の値の少なくともいずれかを抽出し、変数と要素ブロックとの対応付けが示され、更に、要素ブロックでの演算の内容及び要素ブロックでの変数の値の少なくともいずれかが示される対応付け情報を生成し、前記対応付け情報記憶部は、前記プログラム解析対応付け部により生成された対応付け情報を記憶し、前記要素ブロック抽出部は、先行要素ブロックの抽出に用いられた変数を原因変数として抽出するとともに、前記対応付け情報を用いて、前記根本原因要素ブロックで行われる前記原因変数を用いた演算の内容及び前記根本原因要素ブロックでの前記原因変数の値の少なくともいずれかを抽出することを特徴とする請求項3に記載の情報処理装置。前記プログラム解析対応付け部は、変数を用いた演算が行われる要素ブロックに対して、当該演算の内容を表すコメント形式のコードを前記プログラムに埋め込み、変数に値が代入される要素ブロックに対して、代入される変数の値を表すコメント形式のコードを前記プログラムに埋め込むことを特徴とする請求項5に記載の情報処理装置。前記要素ブロック抽出部は、前記直接原因要素ブロックと前記対応付け情報において対応付けられている変数がある場合に、前記直接原因要素ブロックと対応付けられている変数と前記対応付け情報において対応付けられている他の要素ブロックのうち、前記プログラムにおいて前記直接原因要素ブロックよりも後に記述されている要素ブロックを抽出することを特徴とする請求項1~6のいずれかに記載の情報処理装置。前記情報処理装置は、更に、前記要素ブロック抽出部による抽出結果を表示する表示部を有することを特徴とする請求項1~7のいずれかに記載の情報処理装置。前記プログラム解析対応付け部は、GUIGraphicalUserInterface画面を生成するためのプログラムを解析することを特徴とする請求項1~8のいずれかに記載の情報処理装置。コンピュータが、複数の要素ブロックで構成され、いずれかの要素ブロックに変数が含まれるプログラムを解析し、前記プログラムに含まれる変数ごとに、変数と当該変数が含まれる1つ以上の要素ブロックとを対応付けるプログラム解析対応付けステップと、前記コンピュータが、前記プログラム解析対応付けステップによる変数と要素ブロックとの対応付けが示される対応付け情報を記憶する対応付け情報記憶ステップと、前記プログラムの実行結果の少なくとも一部が所定の規約に違反し、当該違反の直接の原因となっている要素ブロックとして抽出された直接原因要素ブロックと前記対応付け情報において対応付けられている変数がある場合に、前記コンピュータが、前記直接原因要素ブロックと対応付けられている変数と前記対応付け情報において対応付けられている他の要素ブロックのうち、前記プログラムにおいて前記直接原因要素ブロックよりも前に記述されている1つ以上の要素ブロックを先行要素ブロックとして抽出する要素ブロック抽出ステップとを有することを特徴とする情報処理方法。複数の要素ブロックで構成され、いずれかの要素ブロックに変数が含まれるプログラムを解析し、前記プログラムに含まれる変数ごとに、変数と当該変数が含まれる1つ以上の要素ブロックとを対応付けるプログラム解析対応付けステップと、前記プログラム解析対応付けステップによる変数と要素ブロックとの対応付けが示される対応付け情報を記憶する対応付け情報記憶ステップと、前記プログラムの実行結果の少なくとも一部が所定の規約に違反し、当該違反の直接の原因となっている要素ブロックとして抽出された直接原因要素ブロックと前記対応付け情報において対応付けられている変数がある場合に、前記直接原因要素ブロックと対応付けられている変数と前記対応付け情報において対応付けられている他の要素ブロックのうち、前記プログラムにおいて前記直接原因要素ブロックよりも前に記述されている1つ以上の要素ブロックを先行要素ブロックとして抽出する要素ブロック抽出ステップとをコンピュータに実行させることを特徴とするプログラム。webシステム等の開発においては、JSP登録商標Java登録商標ServerPagesやASPActiveServerPages等、開発者自身は直接GUI画面を作成せず、パラメータを与えることによって画面生成プログラムが動的にGUI画面を作成する動的画面生成技術を用いるシステムも数多く存在する。動的画面生成技術を用いたシステムにおいても、GUI画面が規約に合致しているか否かを検査する必要があるが、特許文献1の技術では、GUI画面そのものの違反が発見できても、その原因となった画面生成プログラムの違反箇所を特定することができない。また、GUI画面に違反があった場合に、違反の原因となる変数の値や演算など、詳細な違反の原因も特定することができない。このため、試験担当者が画面生成プログラムを目で見て判断しながら違反箇所を特定しなければならず、更に、違反箇所を特定した後も、試験担当者が違反箇所のプログラムを目で見て判断しながら違反の詳細について確認しなければならず、試験担当者の負担となっている。本発明は、上記のような事情に鑑みたものであり、プログラムの実行結果の少なくとも一部が所定の規約に違反する場合に、当該プログラムの検査を容易にし、試験工数を削減することを主な目的とする。本発明に係る情報処理装置は、複数の要素ブロックで構成され、いずれかの要素ブロックに変数が含まれるプログラムを解析し、前記プログラムに含まれる変数ごとに、変数と当該変数が含まれる1つ以上の要素ブロックとを対応付けるプログラム解析対応付け部と、前記プログラム解析対応付け部による変数と要素ブロックとの対応付けが示される対応付け情報を記憶する対応付け情報記憶部と、前記プログラムの実行結果の少なくとも一部が所定の規約に違反し、当該違反の直接の原因となっている要素ブロックとして抽出された直接原因要素ブロックと前記対応付け情報において対応付けられている変数がある場合に、前記直接原因要素ブロックと対応付けられている変数と前記対応付け情報において対応付けられている他の要素ブロックのうち、前記プログラムにおいて前記直接原因要素ブロックよりも前に記述されている1つ以上の要素ブロックを先行要素ブロックとして抽出する要素ブロック抽出部とを有することを特徴とする。本発明によれば、直接原因要素ブロックと対応付けられている変数と対応付け情報において対応付けられている他の要素ブロックのうち、プログラムにおいて直接原因要素ブロックよりも前に記述されている1つ以上の要素ブロックを先行要素ブロックとして抽出するため、試験担当者が確認すべき要素ブロックを先行要素ブロックに限定することができ、試験担当者の負担を軽減することができ、試験工数を削減することができる。実施の形態1.本実施の形態では、動的に画面を生成するシステムにおいてGUI画面がGUI画面レイアウト規約に合致するか検査する際、違反がある場合に違反するGUI画面を生成した画面生成プログラムにおける違反原因部分とその詳細の特定を可能とし、試験工数を削減する構成を説明する。より具体的には、例えば以下の手順で動作する動的生成画面検査装置を説明する。まず、動的生成画面検査装置は、画面生成プログラムに対して、生成元と生成後の対応を保持するためのIDIdentifierとその時の変数や行った演算を出力するコードを埋め込みつつ、その対応情報を情報記憶装置に保管する。次に、動的生成画面検査装置は、コードを埋め込んだ画面生成プログラムにパラメータを与え、実際にGUI画面を生成して、例えば既存技術によって検査を行い、違反の有無を確認する。そして、動的生成画面検査装置は、違反が発生した場合は、埋め込まれたコードによって出力されるID/変数情報と情報記憶装置の対応情報から、生成元となる画面生成プログラムの原因部分を特定する。さらに、動的生成画面検査装置は、情報記憶装置の変数の演算情報から違反発生時の変数が生じた原因となる演算を特定する。図1は、本実施の形態に係る動的生成画面検査装置100のシステム構成例を示す図である。動的生成画面検査装置100は、情報処理装置の例である。画面生成プログラム101は、動的にGUI画面を生成するためのソースコードである。画面生成プログラム101は、例えば、図2で示されるソースコードであり、動的画面を生成するためのソースコードである必要がある。図2では、その一例としてJSP登録商標言語で書かれたソースコードの一部分を示している。画面生成プログラム101は、複数の要素ブロック図2の各行に記述されているコードで構成され、いずれかの要素ブロックに変数が含まれている。そして、画面生成プログラム101内の変数の値をパラメータ102によって変化させることで動的にGUI画面を生成することができる。パラメータ102は、画面生成プログラム101が動的にGUI画面を生成するために受け取る値である。例えば、図2で示されるパラメータであり、画面生成プログラム101の変数にパラメータ102を与えることにより、GUI画面の生成ができる。画面生成プログラム解析部103は、画面生成プログラム101を解析し、プログラムとして読み込む。画面生成プログラム解析部103では、画面生成プログラム101からGUI画面を構成する要素と変数の代入や演算を構文解析によって探し出し、ID出力コードと変数出力コードを埋め込むべき部分を判断する。ID出力コードに関しては、GUI画面の生成元と生成したGUI画面の対応の取得と変数の代入や演算の場所を保持するために埋め込むものであるので、解析を単純化して全ての行に対してIDを付与するという判断を行う方法もある。ID出力コード埋込処理部104は、生成元の画面生成プログラムと生成するGUI画面の対応を取るためのID出力コードを埋め込む。ID出力コード埋込処理部104は、画面生成プログラム解析部103によってID出力コードを埋め込むべき部分として判断された箇所に対して、一意となるIDを出力するコードID出力コードを埋め込む。GUI画面の構成要素部分と変数出現部分に対してID出力コードを埋め込んだ一例が図3である。図3において、符号301~305で示した文字列がID出力コードである。図3では、ID出力コードとしてHTMLHyperTextMarkupLanguage言語のコメントでIDを出力するJSP登録商標コードを埋め込んでいる。また、この時、ID出力コード埋込処理部104は、ID出力コードを埋め込んだ部分とIDの対応をマップとしてID/変数保持部10に保存する。なお、ID/変数保持部10については後述する。変数出力コード埋込処理部105は、画面生成プログラム101において変数の代入や演算が発生する場所での変数の値を出力させるコード変数出力コードを埋め込む。変数出力コード埋込処理部105は、画面生成プログラム解析部103によって変数出力コードを埋め込むべき部分として判断された箇所に対して、その時の変数の値を出力する変数出力コードを埋め込む。変数出現部分に対して変数出力コードを埋め込んだ一例が図4である。図4において、符号401~404で示した文字列が変数出力コードである。図4では、変数に対する代入や変数が利用されている部分に対して、その時の変数の値をコメントとして出力するコードを埋め込んでいる。この時、変数出力コード埋込処理部105は、ID/変数保持部10のID対応マップに対して、変数出力コードの情報を追加する。また、変数出力コード埋込処理部105は、その際に変数に対して行った処理の情報をID/変数保持部10の変数対応マップに保存する。ID/変数保持部10は、ID出力コード埋込処理部104と変数出力コード埋込処理部105で埋め込んだコードのデータを保持する情報記憶装置である。ID/変数保持部10は、ID出力コードを埋め込んだ部分と対応するIDのマップと、変数出力コードを埋め込んだ部分と対応する変数への演算のマップを保持している。ID対応マップの一例が図5である。図5では、埋め込んだID出力コードのID、対応するコード部分要素ブロック、出現する変数、付帯条件を保持している。変数対応マップの一例が図6である。変数対応マップでは、変数名に対して出現したIDと行われた演算、その時の変数の値を保持している。パラメータによって変化する変数の値は、画面生成が行われた時点で入力する。以上に示したように、画面生成プログラム解析部103は、画面生成プログラム101を解析し、ID出力コード埋込処理部104は、画面生成プログラム解析部103の解析結果に従って、画面生成プログラム101にID出力コードを埋め込むとともに、ID対応マップ図5を生成する。更に、変数出力コード埋込処理部105は、画面生成プログラム解析部103の解析結果に従って、画面生成プログラム101に変数出力コードを埋め込むとともに、変数対応マップ図6を生成する。ID対応マップと変数対応マップにより、画面生成プログラム101に含まれる変数ごとに、変数と当該変数が含まれる1つ以上の要素ブロックとが対応付けられている。また、変数対応マップには、画面生成プログラム101に含まれる変数ごとに、ID対応マップにおいて変数と対応付けられている要素ブロックで行われる当該変数を用いた演算の内容及び要素ブロックでの当該変数の値の少なくともいずれかが示されている。ID対応マップと変数対応マップは対応付け情報の例である。画面生成プログラム解析部103、ID出力コード埋込処理部104及び変数出力コード埋込処理部105は、プログラム解析対応付け部の例である。また、ID対応マップと変数対応マップを記憶するID/変数保持部10は対応付け情報の例である。画面生成処理部106は、ID出力コードと変数出力コードを埋め込んだ画面生成プログラム101とパラメータ102を受け取り、GUI画面を生成する。GUI画面生成のための機構は、動的生成画面検査装置100の内部で備えても良いが、動的生成画面検査装置100の外部で画面生成させてもよい。この時生成されるGUI画面コードは、ID出力コード埋込処理部104と変数出力コード埋込処理部105において埋め込んだコードの情報を保持している。画面生成には、ID出力コードと変数出力コードを埋め込んだ画面生成プログラム101に加えて、動的生成画面検査装置100の入力であるパラメータ102も利用する。画面レイアウトチェック処理部107は、従来技術例えば、特許文献1に記載の技術を利用して、画面生成処理部106で生成されたGUI画面が画面レイアウト規約に合致するか否かを検査する。この検査により違反が発生した場合は、生成したGUI画面における違反箇所を特定したうえで違反比較部108の処理に移る。違反が発生しない場合は、画面レイアウトチェック処理部107は、画面生成プログラム101とパラメータ102を、GUI画面レイアウト規約に沿うGUI画面を出力する画面生成プログラムとパラメータであると判断する。違反比較部108は、画面レイアウトチェック処理部107における検査の結果を受け、違反があった場合にID/変数保持部10のデータと照らし合わせ、画面生成プログラムのどこが原因であるかを特定する。つまり、違反比較部108は、違反の直接の原因となっている要素ブロック直接原因要素ブロックともいうを抽出する。画面レイアウトチェック処理部107において特定されたGUI画面の違反箇所は、ID出力コードの埋め込みによってIDが出力されているため、違反比較部108は、この情報を利用して違反箇所と対応する生成元の画面生成プログラムの部分を特定する。違反原因特定部109は、違反比較部108で明らかになる違反箇所直接原因要素ブロックにおいて利用されている変数や演算を確認し、違反の原因となった変数の値や演算を特定する。違反原因特定部109は、ID/変数保持部10のID対応マップと変数対応マップから、違反が発生した際の変数の値と、その変数の値を取ることになった原因となる演算をマップから特定する。より具体的には、違反原因特定部109は、違反比較部108によって抽出された直接原因要素ブロックとID対応マップ及び変数対応マップにおいて対応付けられている変数がある場合に、直接原因要素ブロックと対応付けられている変数と変数対応マップにおいて対応付けられている他の要素ブロックのうち、画面生成プログラム101において直接原因要素ブロックよりも前に記述されている1つ以上の要素ブロックを先行要素ブロックとして抽出する。更に、違反原因特定部109は、変数対応マップを用いて、抽出した先行要素ブロックを解析して、抽出した先行要素ブロックの中から、違反の根本の原因を作り出した要素ブロック根本原因要素ブロックともいうを抽出し、先行要素ブロックの抽出に用いられた変数を原因変数として抽出するとともに、根本原因要素ブロックで行われる原因変数を用いた演算の内容及び根本原因要素ブロックでの原因変数の値の少なくともいずれかを抽出する。表示部110は、画面レイアウトチェック処理部107により違反なしと判断された場合は、生成されたGUI画面に違反がないことを通知するメッセージ112を動的生成画面検査装置100のユーザに表示する。一方、画面レイアウトチェック処理部107により違反ありと判断された場合は、表示部110は、違反箇所や違反原因を通知するメッセージ111を動的生成画面検査装置100のユーザに表示する。メッセージ111では、違反比較部108により特定された直接原因要素ブロック、違反原因特定部109により特定された根本原因要素ブロック、原因変数、根本原因要素ブロックで行われる原因変数を用いた演算の内容、根本原因要素ブロックでの原因変数の値等が示される。次に、動作について説明する。まず、動的生成画面検査装置100の入力として、画面生成プログラム解析部103が、画面生成プログラム101とパラメータ102を受け取る。入力された画面生成プログラム101は、画面生成プログラム解析部103においてプログラムとして読み込まれ、画面生成プログラム解析部103は、ID出力コードを埋め込むべき場所を漏れ無く判断する。解析された画面生成プログラム101は、ID出力コード埋込処理部104でID出力コードを埋め込まれる。同時に、ID出力コード埋込処理部104は、IDと対応するコード部分をID/変数保持部10に保存する。つまり、ID出力コード埋込処理部104は、図5に例示したID対応マップを生成し、ID/変数保持部10に格納する。また、ID出力コード埋込処理部104と同様、画面生成プログラム101は変数出力コード埋込処理部105で変数出力コードを埋め込まれる。同時に、変数出力コード埋込処理部105は、変数と対応するコード部分をID/変数保持部10に保存する。つまり、変数出力コード埋込処理部105は、図6に例示した変数対応マップを生成し、ID/変数保持部10に格納する。次に、画面生成処理部106が、ID出力コードと変数出力コードを埋め込んだ画面生成プログラム101とパラメータ102からGUI画面を生成する。生成されたGUI画面は、画面レイアウトチェック処理部107で検査を行い、違反が無ければ終了し、違反があればGUI画面コードにおける違反箇所を特定して違反比較部108に結果を渡す。GUI画面コードに違反があれば、違反比較部108が、ID/変数保持部10に保存されたID対応マップと変数対応マップを利用して、GUI画面の違反箇所が画面生成プログラム101のどこと対応するかを判断し、違反の原因となったコード部分直接原因要素ブロックを探し出す。違反比較部108による直接原因要素ブロックの探知は、例えば、特開2001-306310号公報に記載の技術を用いて実現可能である。次に、違反原因特定部109が、違反比較部108で明らかになった違反原因コード部分直接原因要素ブロックから、使用されている変数と値に加え、その値になった原因の演算を特定し、違反の原因を示すメッセージ111を生成し、表示部110がメッセージ111を出力する。図7のフローチャートを用いて、違反原因特定部109の動作について説明する。まず、違反箇所対応ID検索処理201において、違反原因特定部109は、違反が発生している部分直接原因要素ブロックと対応するIDをID/変数保持部10のID対応マップから検索する。ID対応マップには、そのIDのコード部分で出現する変数も保持されているため、違反原因特定部109は、出現変数特定処理202で出現する変数を特定する。直接原因要素ブロックに変数が出現しない場合、変数でない部分による違反であり、静的に違反が発見できる部分であるため、その時点で違反特定を終了する。直接原因要素ブロックに変数が出現する場合処理203でYES、違反原因特定部109は、ID/変数保持部10の変数対応マップから出現する変数を探し出し、その演算を検索する処理204。そして、違反原因特定部109は、違反の原因となる変数の値を計算した演算として、違反から近い順序で違反原因としての優先度を決定し、出力する処理205。図4、図5及び図6の例を用いて、違反原因特定部109の動作を説明する。例えば、違反比較部108が図4の<fontsiza=<=a>test</font>を直接原因要素ブロックとして特定した場合に、違反原因特定部109は、ID対応マップ図5から、直接原因要素ブロックに対応するIDとして5を抽出する図7の処理201。また、違反原因特定部109は、ID対応マップ図5から、直接原因要素ブロックで出現する変数として、aを抽出する図7の処理202。この変数aが原因変数となる。次に、違反原因特定部109は、変数対応マップ図6から、変数aが出現する先行する要素ブロックID=1の要素ブロックを根本原因要素ブロックとして抽出するとともに、更に、根本原因要素ブロックにおける変数aでの演算内容declarationと根本原因要素ブロックで代入された値6を抽出する。そして、違反原因特定部109は、直接原因要素ブロックとして<fontsiza=<=a>test</font>を示し、直接原因要素ブロックで出現する原因変数としてaを示し、根本原因要素ブロックとして<a=6>を示し、根本原因要素ブロックにおける変数aでの演算内容としてdeclarationを示し、根本原因要素ブロックで代入された値として6を示すメッセージ111を生成し図7の処理205、表示部110がメッセージ111を表示する。なお、本実施の形態では、説明の簡明のため、図2に示すような単純な画面生成プログラム101を例にして説明を行った。このため、変数対応マップも図6に示すような単純な内容となっており、直接原因要素ブロックとして抽出されたID=5の要素ブロックに先行する要素ブロックはID=1の要素ブロックのみであった。つまり、図6の例では、直接原因要素ブロックID=5の要素ブロックに先行する唯一の要素ブロックID=1の要素ブロックを機械的に根本原因要素ブロックとして導出することになる。しかし、実際の運用では、変数対応マップにおいて、1つの変数に対する対応IDが多数になることが想定される。1つの変数に対する対応IDが多数ある場合、違反原因特定部109は、変数対応マップにおいて直接原因要素ブロックと共通する変数と対応付けられている他の要素ブロックのうち、画面生成プログラム101において直接原因要素ブロックよりも前に記述されている要素ブロックを先行要素ブロックとして抽出し、抽出した先行要素ブロックを解析して、抽出した先行要素ブロックの中から、違反の根本の原因を作り出した根本原因要素ブロックを抽出することになる。違反原因特定部109は、各先行要素ブロックについて変数対応マップに記述されている演算内容及び値を参照して、先行要素ブロックに対する解析を行う。一般的に、変数対応マップの演算内容の欄にdeclarationと記述されている要素ブロックが根本原因要素ブロックとして抽出される。また、メッセージ111に、根本原因要素ブロックだけではなく、根本原因要素ブロックとして認定されなかった先行要素ブロックの各々を表示するようにしてもよい。また、違反原因特定部109は、先行要素ブロックの抽出のみを行い、根本原因要素ブロックの特定を行わなくてもよい。この場合は、メッセージ111には、違反原因特定部109により抽出された先行要素ブロックの各々が表示される。また、この場合に、メッセージ111に、先行要素ブロックの各々で行われる原因変数を用いた演算の内容や先行要素ブロックの各々における原因変数の値を表示するようにしてもよい。更には、違反原因特定部109は、変数対応マップにおいて直接原因要素ブロックと共通する変数と対応付けられている他の要素ブロックのうち、画面生成プログラム101において直接原因要素ブロックよりも後に記述されている要素ブロックを抽出してもよく、メッセージ111に、この要素ブロックを表示するようにしてもよい。また、本実施の形態では、画面生成プログラム101にID出力コードと変数出力コードを埋め込み、ID出力コードと変数出力コードを用いて、図5に示すID対応マップ及び図6に示す変数対応マップを生成する例を説明した。しかし、画面生成プログラム101に含まれる変数ごとに、変数と当該変数が含まれる1つ以上の要素ブロックとを対応付けることができ、また、要素ブロックで行われる演算の内容及び要素ブロックでの変数の値を対応付けることができれば、ID出力コードと変数出力コードを埋め込まなくてもよく、また、図5に示す形式のID対応マップでなくてもよく、図6に示す形式の変数対応マップでなくてもよい。例えば、図8及び図9に示すテーブルのように、ID出力コードと変数出力コードを用いることなく、要素ブロックと出現変数とを対応付け、変数ごとに、要素ブロックで行われる演算の内容及び要素ブロックでの変数の値を対応付けるようにしてもよい。以上、本実施の形態に係る動的生成画面検査装置100では、画面生成プログラム101とパラメータ102から動的に生成されるGUI画面について、GUI画面レイアウト規約に合致するか否かを確認し、違反が発生する場合は画面生成プログラム101の原因部分を特定し、さらにその時の変数の値や演算を特定することによってより詳細な違反原因を自動で調査することが可能となる。つまり、GUI画面がGUI画面レイアウト規約に合致するか否かを検査する際に、違反が発生するGUI画面を出力する画面生成プログラムとパラメータが与えられた時、違反が発生するGUI画面を生成する原因となった箇所を画面生成プログラムから自動的に特定し、さらにそのときの変数や違反に至るまでに行った演算を自動で得ることが可能となる。これにより、動的画面生成技術を用いたシステムの開発において、試験担当者の負荷軽減による作業時間の短縮や試験効率の向上が期待できる。また、自動で違反原因を特定することにより、人為的なミスによる違反原因の見落としも無くなり、精密な違反原因の特定が可能となる。以上、本実施の形態では、動的に画面を生成するための画面生成プログラムと、GUI画面を生成するためのパラメータと、画面生成プログラムを解析する画面生成プログラム解析部と、解析した画面生成プログラムにID出力コードを埋め込むID出力コード埋込処理部と、解析した画面生成プログラムに変数出力コードを埋め込む変数出力埋込処理部と、ID出力コード埋込処理部と変数出力コード埋込処理部で埋め込んだIDと変数の情報を保持するID/変数保持部と、生成した画面に違反があった場合に違反の原因箇所を特定する違反比較部と、違反が発生した原因となる変数の値と演算等を特定する違反原因特定部を備えた動的生成画面検査方式及び装置を説明した。また、本実施の形態では、上記の違反比較部と違反原因特定部において、違反箇所の特定及び違反原因となる詳細な変数の値や演算を特定可能であることを説明した。最後に、本実施の形態に示した動的生成画面検査装置100のハードウェア構成例について説明する。図10は、本実施の形態に示す動的生成画面検査装置100のハードウェア資源の一例を示す図である。なお、図10の構成は、あくまでも動的生成画面検査装置100のハードウェア構成の一例を示すものであり、動的生成画面検査装置100のハードウェア構成は図10に記載の構成に限らず、他の構成であってもよい。図10において、動的生成画面検査装置100は、プログラムを実行するCPU911CentralProcessingUnit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいうを備えている。CPU911は、バス912を介して、例えば、ROMReadOnlyMemory913、RAMRandomAccessMemory914、通信ボード915、表示装置901、キーボード902、マウス903、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。更に、CPU911は、FDD904FlexibleDiskDrive、コンパクトディスク装置905CDD、プリンタ装置906、スキャナ装置907と接続していてもよい。また、磁気ディスク装置920の代わりに、SSDSolidStateDrive、光ディスク装置、メモリカード登録商標読み書き装置などの記憶装置でもよい。RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。本実施の形態で説明したID/変数保持部10は、RAM914、磁気ディスク装置920等により実現される。通信ボード915、キーボード902、マウス903、スキャナ装置907などは、入力装置の一例である。また、通信ボード915、表示装置901、プリンタ装置906などは、出力装置の一例である。通信ボード915は、例えば、LANローカルエリアネットワーク、インターネット、WANワイドエリアネットワーク、SANストレージエリアネットワークなどに接続されている。磁気ディスク装置920には、オペレーティングシステム921OS、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。プログラム群923のプログラムは、CPU911がオペレーティングシステム921、ウィンドウシステム922を利用しながら実行する。また、RAM914には、CPU911に実行させるオペレーティングシステム921のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM914には、CPU911による処理に必要な各種データが格納される。また、ROM913には、BIOSBasicInputOutputSystemプログラムが格納され、磁気ディスク装置920にはブートプログラムが格納されている。動的生成画面検査装置100の起動時には、ROM913のBIOSプログラム及び磁気ディスク装置920のブートプログラムが実行され、BIOSプログラム及びブートプログラムによりオペレーティングシステム921が起動される。上記プログラム群923には、本実施の形態の説明において~部ID/変数保持部10以外、以下同様として説明している機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。ファイル群924には、本実施の形態の説明において、~の解析、~の判断、~の判定、~の抽出、~の対応付け、~の特定、~の比較、~の生成、~の選択、~の入力、~の出力等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、~ファイルや~データベースの各項目として記憶されている。~ファイルや~データベースは、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出される。そして、読み出された情報やデータや信号値や変数値やパラメータは、抽出検索参照比較演算計算処理編集出力印刷表示などのCPUの動作に用いられる。抽出検索参照比較演算計算処理編集出力印刷表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。また、本実施の形態で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示す。データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD等の記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。また、本実施の形態の説明において~部として説明しているものは、~回路、~装置、~機器であってもよく、また、~ステップ、~手順、~処理であってもよい。すなわち、本実施の形態で説明したフローチャートに示すステップ、手順、処理により、本発明に係る情報処理方法を実現することができる。また、~部として説明しているものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子デバイス基板配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、本実施の形態の~部としてコンピュータを機能させるものである。あるいは、本実施の形態の~部の手順や方法をコンピュータに実行させるものである。このように、本実施の形態に示す動的生成画面検査装置100は、処理装置たるCPU、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータである。そして、上記したように~部として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。