説明

テンプレート情報生成プログラム及び装置

【課題】 プログラム設計書によって変化する部分が含まれたプログラムを生成する場合においても、プログラムの変更内容を反映できる。
【解決手段】 実施形態の前記テンプレート情報生成装置においては、前記項目名判定手段による判定結果が前記項目名が含まれている旨を示すとき、当該項目名に基づいて前記項目名/変数対応情報記憶装置からテンプレート変数を読出し、前記第2行番号情報によって示されるソースコードに含まれている当該項目名を当該読出されたテンプレート変数に置換することにより、前記第2行番号情報によって示されるソースコードの雛形を示す部分テンプレート情報を生成する。前記テンプレート情報生成装置においては、前記生成された部分テンプレート情報及び前記テンプレート情報を統合する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、テンプレート情報生成プログラム及び装置に関する。
【背景技術】
【0002】
一般に、プログラム生成装置によって生成されたプログラムに対してプログラムコードの追加や削除等といった変更内容を加えることがある。このような変更内容を新たに生成されるプログラムに反映させる場合、プログラム生成装置に対し、ユーザが変更内容を手動で反映させる方法が知られている。しかしながら、この方法は、ユーザの労力を増やすといった不都合がある。
【0003】
そこで、プログラムに対する変更内容をプログラム生成装置に自動的に反映させることにより、次回以降、新たに生成されるプログラムにこの変更内容を反映させる変更内容反映技術が考案されている。
【0004】
この種の変更内容反映技術としては、プログラム生成装置によって生成されたプログラムに対する変更内容を抽出し、新たに生成されるプログラムに当該抽出された変更内容を反映させる技術がある。
【0005】
また、他の変更内容反映技術としては、プログラムの部品を用いるプログラム生成装置によって生成されたプログラムに変更内容を加えた後、変更内容を含む部品を新たに登録し、新たに生成されるプログラムに変更内容を反映させる技術もある。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開平10−21066号公報
【特許文献2】特開平5−313868号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、以上のような変更内容反映技術は、通常は特に問題ないが、本発明者の検討によれば、新たに生成されるプログラムにプログラム設計書によって変化する部分が含まれている場合に、変更内容を反映できないといった不都合がある。ここで、プログラム設計書によって変化する部分としては、例えば、データベース(DB)のカラム名等といった項目名が挙げられる。
【0008】
本発明が解決しようとする課題は、プログラム設計書によって変化する部分が含まれたプログラムを生成する場合においても、プログラムの変更内容を反映し得るテンプレート情報生成プログラム及び装置を提供することである。
【課題を解決するための手段】
【0009】
実施形態のテンプレート情報生成装置は、ハードウェア資源とソフトウェアとの組合せ構成で実施される場合、テンプレート情報生成装置の機能を実現させるためのテンプレート情報生成プログラムが予めコンピュータにインストールされて実施される。
【0010】
実施形態のテンプレート情報生成装置は、プログラム生成装置、プログラム記憶装置及び項目名/変数対応情報記憶装置に接続されている。前記プログラム生成装置は、データの項目名を含むプログラム設計書及び前記項目名に対応するテンプレート変数を含んで予め記述されたソースコードを有してプログラムの雛形を示すテンプレート情報に基づいて、第1プログラムを生成している。前記プログラム記憶装置は、前記生成された第1プログラム及び当該第1プログラムのソースコードの少なくとも一部に変更が施された第2プログラムを記憶している。前記項目名/変数対応情報記憶装置は、前記プログラム設計書内の項目名及び当該項目名と置換可能なテンプレート変数を関連付けて記憶している。
【0011】
前記テンプレート情報生成装置のプログラム設計書記憶手段においては、前記プログラム設計書を記憶している。
【0012】
前記テンプレート情報生成装置の行番号対応情報記憶手段は、前記テンプレート情報内のソースコードの行番号を示すテンプレート行番号情報と、このテンプレート行番号情報によって示されるソースコードに基づいて生成された第1プログラムのソースコードの行番号を示す行番号情報とを関連すけた行番号対応情報を記憶している。
【0013】
前記テンプレート情報生成装置のメモリは、前記第1プログラム、前記第2プログラム及び前記テンプレート情報を一時的に記憶している。
【0014】
前記テンプレート情報生成装置においては、前記プログラム設計書の入力を受け付けると、当該受け付けたプログラム設計書を前記プログラム設計書記憶手段に書込む。
【0015】
前記テンプレート情報生成装置においては、前記第1プログラム、前記第2プログラム及び前記テンプレート情報の入力を受け付けると、当該受け付けた第1プログラム、当該第2プログラム及び当該テンプレート情報を前記メモリに書込む。
【0016】
前記テンプレート情報生成装置においては、前記メモリ内のテンプレート情報及び第1プログラムに基づいて、前記行番号対応情報を生成し、当該生成された行番号対応情報を前記行番号対応情報記憶手段に書込む。
【0017】
前記テンプレート情報生成装置においては、前記第1プログラムのソースコードと前記第2プログラムのソースコードとの差分に対応する当該第1プログラムのソースコードの行番号を示す第1行番号情報と、当該差分に対応する第2プログラムのソースコードの行番号を示す第2行番号情報と、当該第1プログラムのソースコードに施された変更の型が追加、削除及び更新のいずれであるかを示す変更型情報とを含む差分情報を生成する。
【0018】
前記テンプレート情報生成装置の変更型判定手段においては、前記生成された差分情報内の変更型情報が削除を示すか否かを判定する。
【0019】
前記テンプレート情報生成装置の項目名判定手段においては、前記変更型判定手段による判定の結果、否のとき、前記生成された差分情報内の第2行番号情報によって示されるソースコードを前記メモリから読出し、当該読出されたソースコードに前記項目名が含まれているか否かを判定する。
【0020】
前記テンプレート情報生成装置においては、前記項目名判定手段による判定結果が前記項目名が含まれている旨を示すとき、当該項目名に基づいて前記項目名/変数対応情報記憶装置からテンプレート変数を読出し、前記第2行番号情報によって示されるソースコードに含まれている当該項目名を当該読出されたソースコードに置換することにより、前記第2行番号情報によって示されるソースコードの雛形を示す部分テンプレート情報を生成する。
【0021】
前記テンプレート情報生成装置の分析結果情報生成手段においては、前記生成された部分テンプレート情報及び前記記憶されたテンプレート情報に基づいて、当該部分テンプレート情報及び当該テンプレート情報を統合するための条件を示す統合条件情報を含む分析結果情報を生成する。
【0022】
前記テンプレート情報生成装置のテンプレート情報統合手段においては、前記生成された分析結果情報及び前記記憶された行番号対応情報に基づいて、前記生成された部分テンプレート情報及び前記テンプレート情報を統合する。
【図面の簡単な説明】
【0023】
【図1】一実施形態に係るテンプレート情報生成システムの構成の一例を示す機能ブロック図である。
【図2】同実施形態におけるテンプレート情報記憶装置に記憶されたテンプレート情報の一例を示す模式図である。
【図3】同実施形態におけるテンプレート情報記憶装置に記憶されたテンプレート情報の一例を示す模式図である。
【図4】同実施形態におけるプログラム設計書記憶部に記憶されたプログラム設計書の一例を示す模式図である。
【図5】同実施形態におけるプログラム記憶装置に記憶された第1プログラムの一例を示す模式図である。
【図6】同実施形態におけるプログラム記憶装置に記憶された第1プログラムの一例を示す模式図である。
【図7】同実施形態におけるプログラム記憶装置に記憶された第1プログラムの一例を示す模式図である。
【図8】同実施形態におけるプログラム記憶装置に記憶された第1プログラムの一例を示す模式図である。
【図9】同実施形態におけるプログラム記憶装置に記憶された第2プログラムの一例を示す模式図である。
【図10】同実施形態におけるプログラム記憶装置に記憶された第2プログラムの一例を示す模式図である。
【図11】同実施形態におけるプログラム記憶装置に記憶された第2プログラムの一例を示す模式図である。
【図12】同実施形態におけるプログラム記憶装置に記憶された第2プログラムの一例を示す模式図である。
【図13】同実施形態における項目名/変数対応情報記憶装置に記憶された情報の一例を示す模式図である。
【図14】同実施形態における行番号対応情報記憶部に記憶された情報の一例を示す模式図である。
【図15】同実施形態における差分情報記憶部に記憶された差分情報の一例を示す模式図である。
【図16】同実施形態における部分テンプレート情報記憶部に記憶された部分テンプレート情報の一例を示す模式図である。
【図17】同実施形態における部分テンプレート情報記憶部に記憶された部分テンプレート情報の一例を示す模式図である。
【図18】同実施形態における分析結果情報記憶部に記憶された分析結果情報の一例を示す模式図である。
【図19】同実施形態におけるテンプレート情報生成装置の動作の一例を示すフローチャートである。
【図20】同実施形態におけるテンプレート情報生成装置の動作の一例を示す模式図である。
【図21】同実施形態におけるプログラム記憶装置に記憶された第1プログラムの一例を示す模式図である。
【図22】同実施形態におけるプログラム記憶装置に記憶された第1プログラムの一例を示す模式図である。
【図23】同実施形態におけるプログラム記憶装置に記憶された第2プログラムの一例を示す模式図である。
【図24】同実施形態におけるテンプレート情報統合部の動作の一例を示す模式図である。
【図25】同実施形態における差分情報生成部によって生成された差分情報内の第2行番号情報により示される第2プログラムの一例を示す模式図である。
【図26】同実施形態における差分情報生成部によってメモリに書込まれるB_listの一例を示す模式図である。
【図27】同実施形態における分析結果情報生成部及びテンプレート情報統合部の動作の一例を示すフローチャートである。
【図28】同実施形態における分析結果情報生成部の動作の一例を示す模式図である。
【図29】同実施形態におけるテンプレート情報統合部の動作の一例を示す模式図である。
【図30】同実施形態におけるテンプレート情報統合部によって統合されたテンプレート情報の一例を示す模式図である。
【図31】同実施形態におけるテンプレート情報統合部によって統合されたテンプレート情報の一例を示す模式図である。
【図32】同実施形態におけるテンプレート情報統合部によって統合されたテンプレート情報の一例を示す模式図である。
【図33】同実施形態におけるプログラム記憶装置に記憶された第1プログラムの一例を示す模式図である。
【図34】同実施形態におけるプログラム記憶装置に記憶された第2プログラムの一例を示す模式図である。
【発明を実施するための形態】
【0024】
以下、一実施形態について図面を参照して説明する。なお、以下のテンプレート情報生成装置は、ハードウェア構成、又はハードウェア資源とソフトウェアとの組合せ構成のいずれでも実施可能となっている。組合せ構成のソフトウェアとしては、予めネットワーク又は記憶媒体からコンピュータにインストールされ、テンプレート情報生成装置の機能を当該コンピュータに実現させるためのプログラムが用いられる。
【0025】
図1は一実施形態に係るテンプレート情報生成装置を含むテンプレート情報生成システムの構成の一例を示す機能ブロック図であり、図2及び図3は同実施形態におけるテンプレート情報記憶装置に記憶されたテンプレート情報の一例を示す模式図であり、図4は同実施形態におけるプログラム設計書記憶部に記憶されたプログラム設計書の一例を示す模式図である。図5〜図8は同実施形態におけるプログラム記憶装置に記憶された第1プログラムの一例を示す模式図であり、図9〜図12は同実施形態におけるプログラム記憶装置に記憶された第2プログラムの一例を示す模式図であって、図13は同実施形態における項目名/変数対応情報記憶装置に記憶された情報の一例を示す模式図である。
【0026】
テンプレート情報生成システム10は、テンプレート情報生成装置100、テンプレート情報記憶装置200、プログラム生成装置300、プログラム記憶装置400及び項目名/変数対応情報記憶装置500を含んでいる。テンプレート情報生成装置100は、テンプレート情報記憶装置200、プログラム生成装置300、プログラム記憶装置400及び項目名/変数対応情報記憶装置500に接続されている。なお、「テンプレート情報」の語は、単に「テンプレート」と呼んでもよい。
【0027】
テンプレート情報記憶装置200は、図2及び図3に示すように、プログラム生成装置300によって生成されるプログラムの雛形を示すテンプレート情報tを記憶している。なお、テンプレート情報tは、複数のソースコードの集合を示す複数のブロック情報から構成され、各ブロック情報は、ブロックの開始を示す開始コメント情報(例えば、「/* start:…*/」を含む行情報等)及びブロックの終了を示す終了コメント情報(例えば、「/* end:…*/」を含む行情報等)を含んでいる。また、テンプレート情報t1は、プログラム設計書pd内のデータの項目名iに対応するテンプレート変数vを含んで予め記述されたソースコードを有している。
【0028】
プログラム生成装置300は、プログラム設計書pd及びテンプレート情報tに基づいて、第1プログラムを生成する処理を実行する。プログラム設計書pdは、図4に示すように、データの項目名i(例えば、“論理名 従業員番号”及び/または“物理名 ENPNO”等)を少なくとも含んでいる。補足すると、図4に示す例では、プログラム設計書pdは、データ毎に、論理名及び物理名といった項目名iと、属性(型)、桁、位取、Not Null及び主キーといったDBの設計情報と、検索条件(で表示する/しない)、一覧表示(で表示する/しない)及び詳細(編集の可/不可)といった画面表示の処理内容とを含んでいる。
【0029】
プログラム記憶装置400は、図5〜図12に示すように、プログラム生成装置300によって生成された第1プログラムpと、この第1プログラムpのソースコードの少なくとも一部に変更が施された第2プログラムp´とを記憶している。なお、第1プログラムp及び第2プログラムp´は、上述のテンプレート情報tと同様に、複数のブロック情報から構成されている。
【0030】
項目名/変数対応情報記憶装置500は、図13に示すように、プログラム設計書pd内の項目名i及びこの項目名iと置換可能なテンプレート変数vを関連付けて記憶している。具体的には、例えば、図13に示すように、プログラム設計書pd内の項目名iを示す“削除フラグ”と、この項目名iと置換可能なテンプレート変数vを示す“${columninfo.name}”とを関連付けて記憶している。
【0031】
ここで、テンプレート情報生成装置100は、プログラム設計書記憶部101、行番号対応情報記憶部102、差分情報記憶部103、部分テンプレート情報記憶部104、分析結果情報記憶部105、入力ファイル読込部106、行番号対応情報生成部107、差分情報生成部108、部分テンプレート情報生成部109、分析結果情報生成部110、テンプレート情報統合部111及びテンプレート情報出力部112を備えている。各記憶部101〜105は、それぞれ各部106〜112から読出/書込可能な記憶装置又は記憶装置の記憶領域からなり、以下のように情報を記憶している。
【0032】
プログラム設計書記憶部101は、図4に示すように、入力ファイル読込部106により書き込まれたプログラム設計書pdを記憶している。
【0033】
行番号対応情報記憶部102は、図14に示すように、行番号対応情報生成部107により書き込まれた行番号対応情報Lを記憶している。行番号対応情報Lは、テンプレート情報t内のソースコードの行番号を示すテンプレート行番号情報と、このテンプレート行番号情報によって示されるソースコードに基づいて生成された第1プログラムpのソースコードの行番号を示す行番号情報とを関連付けた情報である。補足すると、図14に示す例では、行番号対応情報記憶部102は、テンプレート行番号情報“08-20”と、このテンプレート行番号情報によって示されるソースコードに基づいて生成された第1プログラムpのソースコードの行番号情報“73-85”とを関連付けて記憶している。
【0034】
差分情報記憶部103は、図15に示すように、差分情報生成部108により生成された差分情報dを記憶する。差分情報dは、第1プログラムp及び第2プログラムpの差分に対応する当該第1プログラムpのソースコードの行番号を示す第1行番号情報と、当該差分に対応する第2プログラムp´のソースコードの行番号を示す第2行番号情報と、当該第1プログラムpのソースコードに施された変更の型が追加、削除または更新のいずれであるかを示す変更型情報とを含んでいる。補足すると、図15に示す例では、“<before_filename>”が第1プログラムpのファイル名(換言すると、変更適用前のプログラムのファイル名)を示し、“<after_filename>”が第2プログラムp´のファイル名(換言すると、変更適用後のプログラムのファイル名)を示している。更に補足すると、“<before start=”73” end=”85”>”が第1行番号情報(換言すると、変更適用前のプログラムの行番号情報)を示し、“<after start=”73” end=”78”>”が第2行番号情報(換言すると、変更適用後のプログラムの行番号情報)を示し、“<custom_type>”が変更型情報を示している。
【0035】
部分テンプレート情報記憶部104は、図16及び図17に示すように、部分テンプレート情報生成部109により生成された部分テンプレート情報ptを記憶する。部分テンプレート情報ptは、第1プログラムに対して適用された変更内容を含む部分的なテンプレート情報を示している。補足すると、部分テンプレート情報ptは、第2行番号情報によって示されるソースコードの雛形を示している。
【0036】
分析結果情報記憶部105は、図18に示すように、分析結果情報生成部110により生成された分析結果情報aを記憶する。分析結果情報aは、統合条件情報を含んでおり、この例では適用条件情報を更に含んでいる。適用条件情報は、部分テンプレート情報ptをテンプレート情報tに適用するための条件を示しており、例えば、テンプレート情報tに挿入するための条件文(例えば、“#if{columnInfo.id==”delete_flag”}”等)等を示す。また、統合条件情報は、テンプレート情報t及び部分テンプレート情報ptを統合するための条件を示しており、追加または置換を示している。補足すると、図18に示すように、“<no>”が部分テンプレート情報ptの番号を示し、“<applied_condition>”が適用条件情報を示し、“<unified_condition>”が統合条件情報を示している。
【0037】
入力ファイル読込部106は、第1プログラムpを生成する際にプログラム生成装置300によって用いられたプログラム設計書pdの入力(受信を含む)を受け付けると、このプログラム設計書pdをプログラム設計書記憶部101に書込む処理を実行する。具体的には、例えば、以下の各機能(f106-1)及び(f106-2)をもっている。
【0038】
(f106-1) プログラム設計書pdの入力を受け付けると、当該受け付けたプログラム設計書pdをプログラム設計書記憶部101に書込む機能。
【0039】
(f106-2) 第1プログラムp、第2プログラムp´及びテンプレート情報tの入力を受け付けると、当該受け付けた第1プログラムp、当該第2プログラムp´及び当該テンプレート情報tをメモリ(図示せず)に書込む機能。
【0040】
行番号対応情報生成部107は、メモリ内のテンプレート情報t及び第1プログラムpに基づいて、行番号対応情報Lを生成するものであり、例えば、テンプレート情報tの開始コメント情報と、第1プログラムpの開始コメント情報とを比較することによって、行番号対応情報Lを生成する処理を実行する。また、行番号対応情報生成部107は、当該生成された行番号対応情報Lを行番号対応情報記憶部102に書込む処理も実行する。
【0041】
差分情報生成部108は、第1プログラムp及び第2プログラムp´をメモリから読出し、当該読出された第1プログラムp及び当該読出された第2プログラムp´を比較することによって、当該第1プログラムpと当該第2プログラムp´との差分情報dを生成する処理を実行する。また、差分情報生成部108は、当該生成された差分情報dを差分情報記憶部103に書込む処理も実行する。
【0042】
なお、本実施形態では、差分情報生成部108は、UNIX(登録商標)のdiffコマンド機能を用いることで、当該第1プログラムpと当該第2プログラムp´との差分情報dを生成している。
【0043】
部分テンプレート情報生成部109は、第1プログラムpに対して施された変更内容を含む部分的なテンプレート情報を示す部分テンプレート情報ptを生成する処理を実行する。具体的には、例えば、以下の各機能(f109-1)〜(f109-4)をもっている。
【0044】
(f109-1) 差分情報生成部108によって生成された差分情報d内の変更型情報が削除を示すか否かを判定する変更型判定機能。
【0045】
(f109-2) 変更型判定機能(f109-1)による判定の結果、否のとき、当該差分情報d内の第2行番号情報によって示されるソースコードをメモリから読出し、この読出されたソースコードにプログラム設計書pdの項目名iが含まれているか否かを判定する項目名判定機能。
【0046】
(f109-3) 項目名判定機能(f109-2)による判定結果が当該項目名iが含まれている旨を示すとき、当該項目名iに基づいて項目名/変数対応情報記憶装置500からテンプレート変数vを読出し、第2行番号情報によって示されるソースコードに含まれている当該項目名iを当該読出されたテンプレート変数vに置換することにより、第2行番号情報によって示されるソースコードの雛形を示す部分テンプレート情報ptを生成する機能。
【0047】
(f109-4) 項目名判定機能(f109-2)による判定結果が否を示すとき、当該差分情報d内の第2行番号情報によって示されるソースコードである部分テンプレート情報ptを生成する機能。
【0048】
分析結果情報生成部110は、部分テンプレート情報pt及びテンプレート情報tに基づいて、当該部分テンプレート情報pt及び当該テンプレート情報tを統合するための条件を含む分析結果情報を生成する処理を実行する。具体的には、例えば、以下の各機能(f110-1)〜(f110-7)をもっている。
【0049】
(f110-1) メモリに記憶されたテンプレート情報tと、部分テンプレート情報生成部109によって生成された部分テンプレート情報ptとを比較することによって、当該テンプレート情報tと当該部分テンプレート情報ptとの一致するソースコードを検出し、当該検出されたソースコードに基づいて、当該部分テンプレート情報ptを出力するための条件を示すソースコードである出力条件情報を当該テンプレート情報から抽出する機能。
【0050】
(f110-2) 当該抽出された出力条件情報と、差分情報生成部108によって生成された差分情報d内の第1行番号情報によって示されるソースコードとに基づいて、このソースコードに含まれる項目名iを含み、当該部分テンプレート情報ptをテンプレート情報tに適用するための条件を示すソースコードである適用条件情報を生成する機能。
【0051】
(f110-3) 当該差分情報d内の第1行番号情報によって示されるソースコードと、メモリに記憶された第1プログラムpのソースコードとを比較することによって、当該第1行番号情報によって示されるソースコードが当該第1プログラムpの全てのソースコードと一致するか否かを判定するソースコード一致判定機能。
【0052】
(f110-4) ソースコード一致判定機能(f110-3)による判定結果が一致する旨を示すとき、メモリに記憶されたテンプレート情報tのソースコードを当該部分テンプレート情報ptのソースコードに置換する旨を示す統合条件情報を生成する機能。
【0053】
(f110-5) ソースコード一致判定機能(f110-4)による判定結果が一致しない旨を示すとき、メモリに記憶されたテンプレート情報tのソースコードに当該部分テンプレート情報ptのソースコードを追加する旨を示す統合条件情報を生成する機能。
【0054】
(f110-6) 当該生成された適用条件情報及び当該生成された統合条件情報を含む分析結果情報aを生成する機能。
【0055】
(f110-7) 変更型判定機能(f109-1)による判定の結果、当該変更型情報が削除を示すとき、差分情報生成部108によって生成された差分情報d内の第1行番号情報によって示されるソースコードに基づいて、このソースコードに含まれる項目名iを含み、第1プログラムpのソースコードに施された削除をテンプレート情報tに適用するための条件を示すソースコードである適用条件情報を生成する機能。
【0056】
なお、分析結果情報生成部110は、以下の機能(f110-8)及び(f110-9)を更にもっていてもよい。
【0057】
(f110-8) 行番号対応情報記憶部102内の行番号対応情報Lに基づいて、同一のテンプレート情報tから生成された複数の第1プログラムpが存在するか否かを判定するプログラム存在可否判定機能。
【0058】
(f110-9) プログラム存在可否判定機能(f110-8)による判定の結果、複数の第1プログラムpが存在する旨を示すとき、これら第1プログラムpに関する部分テンプレート情報ptが同一のソースコードを示しているか否かを判定する部分テンプレート同一可否判定機能。
【0059】
テンプレート情報統合部111は、分析結果情報生成部110によって生成された分析結果情報a及び行番号対応情報記憶部102に記憶された行番号対応情報Lに基づいて、メモリに記憶されたテンプレート情報tと、部分テンプレート情報生成部109によって生成された部分テンプレート情報ptとを統合する処理を実行する。また、テンプレート情報統合部111は、変更型情報が削除を示すときには部分テンプレート情報ptが存在しないため、行番号対応情報記憶部102内の行番号対応情報Lに基づいて、分析結果情報生成部110によって生成された適用条件情報をメモリ内のテンプレート情報tに追加(統合)する処理を実行する。
【0060】
テンプレート情報出力部112は、テンプレート情報統合部111によって統合されたテンプレート情報t´をテンプレート情報記憶装置200に出力し、このテンプレート情報t´をテンプレート情報記憶装置200に書込む処理を実行する。
【0061】
次に、以上のように構成されたテンプレート情報生成装置の動作について、図19のフローチャートと、図20〜図26の模式図とを参照しながら説明する。なお、本実施形態では、図20に示すように、主に(a)の処理について説明する。また、テンプレート情報tは図2及び図3に示したソースコードを含み、第1プログラムpは図5〜図8に示したソースコードを含み、第2プログラムp´は図9〜図12に示したソースコードを含むものとする。
【0062】
始めに、入力ファイル読込部106は、プログラム設計書pdの入力を受け付けると、当該受け付けたプログラム設計書pdをプログラム設計書記憶部101に書込む(ステップS1)。
【0063】
続いて、入力ファイル読込部106は、第1プログラムp、第2プログラムp´及びテンプレート情報tの入力を受け付けると、当該受け付けた第1プログラムp、当該第2プログラムp´及び当該テンプレート情報tをメモリ(図示せず)に書込む(ステップS2)。
【0064】
次に、差分情報生成部108は、第1プログラムp及び第2プログラムp´を比較することによって、図15に示すように、第1行番号情報“<before start=”73” end=”85”/>”、第2行番号情報“<after start=”73” end=”78”/>”及び変更型情報“update(更新)”を含む差分情報dを生成する(ステップS3)。
【0065】
続いて、部分テンプレート情報生成部109は、当該生成された差分情報d内の変更型情報が“delete(削除)”を示すか否かを判定する(ステップS4)。
【0066】
ここで、図19のフローチャートの主な動作とは異なり、削除を示す場合の動作について説明する。なお、テンプレート情報生成装置100内のメモリに記憶された第1プログラムp及び第2プログラムp´は、図21〜図23に示すように、上述の図5〜図12に示されるプログラムとは異なるものとする。
【0067】
ステップS4の判定の結果、当該変更型情報が“delete(削除)”を示す場合(ステップS4:「示す」)には、分析結果情報生成部110は、差分情報d内の第1行番号情報によって示されるソースコードを読出し、このソースコードに含まれるプログラム設計書pdの項目名iを抽出し、当該抽出された項目名iを含む適用条件情報を生成する(ステップS5)。
【0068】
次に、テンプレート情報統合部111は、行番号対応情報記憶部102内の行番号対応情報Lに基づいて、当該テンプレート情報tのソースコードにステップS5で生成された適用条件情報を追加し(ステップS6)、テンプレート情報生成装置100での動作を終了する。
【0069】
この場合、テンプレート情報統合部111は、行番号対応情報Lに基づいてテンプレート行番号情報(換言すると、テンプレート情報の変更前のブロック情報の位置を示す位置情報)を取得した後に、当該取得された位置情報に基づいて、当該テンプレート情報tのブロック情報の直前の行に適用条件情報“#if($columnInfo.id==”hiredate”)”を追加する。なお、テンプレート情報統合部111は、適用条件情報が上述のようにif文の場合、図24に示すように、追加した適用条件情報の直後の行(換言すると、テンプレート情報tの変更前のブロック情報の直前の行)に“#else”を含むelse文を出力し、当該テンプレート情報tの変更前のブロック情報の直後の行に“#end”を含むend文を出力する。
【0070】
続いて、図19のフローチャートの主な動作に戻り、削除を示さない場合の動作について説明する。
【0071】
ステップS4の判定の結果、当該変更型情報が“delete(削除)”を示さない場合(ステップS4:「示さない」)には、部分テンプレート情報生成部109は、当該生成された差分情報d内の第2行番号情報によって示されるソースコードを読出す(ステップS7)。この場合、部分テンプレート情報生成部109は、図15に示すように、第2プログラムp´の73行“/**”から78行“private BigDecimal delete_flag”までのソースコードを読出す。
【0072】
次に、部分テンプレート情報生成部109は、プログラム設計書記憶部101に記憶されたプログラム設計書pd内の項目名iが当該読出されたソースコードに含まれているか否かを判定する(ステップS8)。
【0073】
ステップS8の判定の結果、否の場合(ステップS8:「含まない」)には、部分テンプレート情報生成部109は、図17に示したように、第2行番号情報によって示されるソースコードである部分テンプレート情報ptを生成し(ステップS9)、ステップS12の処理へ進む。なお、第2行番号情報によって示されるソースコードは、部分テンプレート情報生成部109によって第1リスト情報A_listとしてメモリに書込まれる。
【0074】
ステップS8の判定の結果、プログラム設計書pdの項目名iを含む場合(ステップS8:「含む」)には、部分テンプレート情報生成部109は、このプログラム設計書pdの項目名iに関連付けられたテンプレート変数vを項目名/変数対応情報記憶装置500から読出す(ステップS10)。この場合、部分テンプレート情報生成部109は、プログラム設計書pdの項目名i“削除フラグ”に関連付けられたテンプレート変数v“${columninfo.name}”と、プログラム設計書pdの項目名i“delete_flag”に関連付けられたテンプレート変数v“${columninfo.id}”とを項目名/変数対応情報記憶装置500から読出す。また、部分テンプレート情報生成部109は、図25に示す如き、ソースコードがステップS7で読み出された場合、図26に示すように、ステップS7で読出された第2行番号情報によって示されるソースコード(換言すると、program変数)と、プログラム設計書pdの項目名i“削除フラグ”及び“delete_flag”(換言すると、design変数)とを第2リスト情報B_listとしてメモリに書込む。
【0075】
続いて、部分テンプレート情報生成部109は、ステップS7において読出されたソースコードに含まれる項目名i“削除フラグ”をテンプレート変数v“${columninfo.name}”に置換し、項目名i“delete_flag”をテンプレート変数v“${columninfo.id}”にそれぞれ置換することにより、図16に示したように、部分テンプレート情報ptを生成する(ステップS11)。なお、当該生成された部分テンプレート情報ptは、部分テンプレート情報ptと、差分情報d内の第1行番号情報によって示される第1プログラムpとの関係が分かるような形式で部分テンプレート情報記憶部104に記憶される。
【0076】
次に、テンプレート情報統合部111は、メモリ内のテンプレート情報tを読出し、当該読出されたテンプレート情報tと、当該生成された部分テンプレート情報ptとを統合し、新たなテンプレート情報t´を生成する(ステップS12)。
【0077】
しかる後、テンプレート情報出力部112は、当該生成された新たなテンプレート情報t´をテンプレート情報記憶装置200に出力し、この新たなテンプレート情報t´をテンプレート情報記憶装置200に書込む(ステップS13)。
【0078】
次に、前述したステップS12の詳細な処理について、図27のフローチャートを参照しながら説明する。
【0079】
始めに、分析結果情報生成部110は、メモリからテンプレート情報tを読出す(ステップS120)。
【0080】
続いて、分析結果情報生成部110は、図28に示すように、当該読出されたテンプレート情報tと、ステップS9において生成された部分テンプレート情報ptとを比較することによって、当該部分テンプレート情報ptのソースコードと一致するソースコードを当該テンプレート情報tから抽出する(ステップS121)。
【0081】
次に、分析結果情報生成部110は、当該抽出されたソースコードに基づいて、当該部分テンプレート情報ptを出力するための条件を示すソースコードである出力条件情報をテンプレート情報から抽出する(ステップS122)。
【0082】
この場合、分析結果情報生成部110は、図28に示すように、当該抽出されたソースコードの直前に位置し、検索条件画面で検索条件を指定可能な出力条件情報“#foreach($columninfo in $tableInfo.screenSearchColumnList)”と、DBの型がnumber型の出力条件情報“#if($columnInfo.type==”number”)”とをテンプレート情報tから抽出する。
【0083】
続いて、分析結果情報生成部110は、抽出された出力条件情報と、差分情報生成部108により生成された差分情報d内の第1行番号情報によって示されるソースコードとに基づいて、このソースコードに含まれるプログラム設計書pd内の項目名iを抽出し、当該抽出された項目名iを含み、部分テンプレート情報ptをテンプレート情報tに適用するための条件を示すソースコードである適用条件情報を生成する(ステップS123)。
【0084】
この場合、分析結果情報生成部110は、当該第1行番号情報によって示されるソースコードに含まれるプログラム設計書pdの項目名i“delete_flag”を抽出し、この抽出された項目名i“delete_flag”に関連付けられたテンプレート変数v“{$columnInfo.id}”を項目名/変数対応情報記憶装置500から読出す。また、分析結果情報生成部110は、当該抽出された項目名i“delete_flag”及び当該読出されたテンプレート変数v“{$columnInfo.id}”に基づいて、適用条件情報“#if($columnInfo.id==delete_flag)”を生成する。
【0085】
なお、本実施形態では、接頭語が“#if”の適用条件情報としたが、これに限定されない。例えば、接頭語が“#foreach”の適用条件情報等が適用可能である。
【0086】
次に、分析結果情報生成部110は、当該差分情報d内の第1行番号情報によって示されるソースコードと、メモリに記憶された第1プログラムpのソースコードとを比較することによって、当該第1行番号情報によって示されるソースコードが当該第1プログラムpの全てのソースコードと一致するか否かを判定する(ステップS124)。
【0087】
ステップS24の判定の結果、ソースコードが一致する旨を示す場合(ステップS124:「一致する」)には、分析結果情報生成部110は、メモリに記憶されたテンプレート情報tのソースコードを当該部分テンプレート情報ptのソースコードに置換する旨を示す統合条件情報“置換”を生成する(ステップS125)。
【0088】
ステップS124の判定の結果、ソースコードが一致しない旨を示す場合(ステップS124:「一致しない」)には、分析結果情報生成部110は、メモリに記憶されたテンプレート情報tのソースコードに当該部分テンプレート情報ptのソースコードを追加する旨を示す統合条件情報“追加”を生成する(ステップS126)。
【0089】
続いて、分析結果情報生成部110は、図18に示したように、当該生成された適用条件情報“#if($columnInfo.id==delete_flag)”及び当該生成された統合条件情報“追加”を含む分析結果情報aを生成する(ステップS127)。
【0090】
しかる後、テンプレート情報統合部111は、図29〜図31に示すように、行番号対応情報記憶部102に記憶された行番号対応情報Lと、分析結果情報生成部110によって生成された分析結果情報aとに基づいて、当該テンプレート情報tのソースコード及び当該部分テンプレート情報ptのソースコードを統合する(ステップS128)。この場合、テンプレート情報統合部111は、行番号対応情報Lに基づいてテンプレート行番号情報(換言すると、テンプレート情報t内の変更前のブロック情報の位置を示す位置情報)を取得した後に、当該取得された位置情報及び当該生成された分析結果情報a内の統合条件情報“追加”に基づいて、当該変更前のブロック情報の直前の行に適用条件情報“#if($columnInfo.id==delete_flag)”を追加する。なお、テンプレート情報統合部111は、適用条件情報が上述のようにif文の場合、図29に示すように、追加した適用条件情報の直後の行(換言すると、変更前のブロック情報の直前の行)に部分テンプレート情報ptを追加し、追加した部分テンプレート情報ptの直後の行に“#else”を含むelse文を出力し、当該変更前のブロック情報の直後の行に“#end”を含むend文を出力する。これにより、変更前のブロック情報を適用する旨のテンプレート情報tの記述(出力条件情報の後に、変更前のブロック情報がある記述)は、変更前のブロック情報を適用する前に、部分テンプレート情報ptを適用する旨の記述(出力条件情報の後に、適用条件情報と部分テンプレート情報ptがある記述)と、部分テンプレート情報ptを適用しない場合に、変更前のブロック情報を適用する旨の記述(部分テンプレート情報ptの後に、else文と変更前のブロック情報とend文がある記述)に変更される。
【0091】
なお、上述したステップS120の処理の前に、同一のテンプレート情報ptから複数の第1プログラムp(または複数の第2プログラムp´)が生成されたか否かを判定する第1の判定ステップと、これら複数の第1プログラムpに関する複数の部分テンプレート情報ptのうち、同一のソースコードを示す部分テンプレート情報ptが存在するか否かを判定する第2の判定ステップとを更に加えてもよい。
【0092】
このように2つの判定ステップが上述したステップS120の処理の前に更に加えられ、これら2つの判定ステップによって、複数の第1プログラムpが存在し、これら複数の第1プログラムpに関する複数の部分テンプレート情報ptのうち、同一のソースコードを示す部分テンプレート情報ptが存在する旨を示す場合(例えば、図20に示すような処理(b))には、上述したステップS123の処理において、分析結果情報生成部110は、図32〜図34に示すように、同一のソースコードを示す部分テンプレート情報t21´,t22´を生成する際に用いた第1プログラムp21,p22のソースコードと、部分テンプレート情報t21´,t22´とは異なるソースコードを示す部分テンプレート情報t23´を生成する際に用いた第1プログラムp23のソースコードとを比較し、第1プログラムp21,p22のソースコードには存在するが、第1プログラムp23のソースコードには存在しないプログラム設計書pdの項目名iを抽出し、この抽出された項目名iを部分テンプレート情報t21´,t22´に関する適用条件情報の一部として生成する処理を実行してもよい。
【0093】
また、上述したステップS120の処理の前に加えられた第1の判定ステップにおいて、複数の第1プログラムpが存在する旨を示す場合、上述したステップS123の処理の後に、上述したステップS124,S125の処理を省略し、ステップS126の処理へ進む処理を実行してもよい。
【0094】
なお、本実施形態では、第1プログラムpは、データベースに対してデータの検索、登録、更新及び削除が可能なWeb(World Wide Web)アプリケーションプログラムを示すが、これに限定されない。例えば、データベースを用いた任意のプログラム等が適用可能である。なお、Webアプリケーションプログラムには、Java(登録商標)プログラム、JSP(Java Server Pages)プログラム及び設定ファイルプログラムが含まれる。
【0095】
また、同実施形態では、差分情報及び分析結果情報が、XML(Extensible Markup Language)形式を用いて生成されているが、これに限定されない。例えば、HTML(Hyper Text Markup Language)形式等を用いて生成することが可能である。
【0096】
以上説明した本実施形態によれば、部分テンプレート情報生成部109、分析結果情報生成部110及びテンプレート情報統合部111を備えた構成により、プログラム設計書によって変化する部分が含まれたプログラムを生成する場合においても、プログラムの変更内容を反映できる。
【0097】
なお、上記の各実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスクなど)、光ディスク(CD−ROM、DVDなど)、光磁気ディスク(MO)、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【0098】
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
【0099】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワークソフト等のMW(ミドルウェア)等が上記実施形態を実現するための各処理の一部を実行しても良い。
【0100】
さらに、各実施形態における記憶媒体は、コンピュータと独立した媒体に限らず、LANやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【0101】
また、記憶媒体は1つに限らず、複数の媒体から上記の各実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
【0102】
なお、各実施形態におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記の各実施形態における各処理を実行するものであって、パソコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
【0103】
また、各実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【0104】
なお、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0105】
10…テンプレート情報生成システム、100…テンプレート情報生成装置、101…プログラム設計書記憶部、102…行番号対応情報記憶部、103…差分情報記憶部、104…部分テンプレート情報記憶部、105…分析結果情報記憶部、106…入力ファイル読込部、107…行番号対応情報生成部、108…差分情報生成部、109…部分テンプレート情報生成部、110…分析結果情報生成部、111…テンプレート情報統合部、112…テンプレート情報出力部、200…テンプレート情報記憶装置、300…プログラム生成装置、400…プログラム記憶装置、500…項目名/変数対応情報記憶装置、t,t´…テンプレート情報、p,p´…プログラム、pd…プログラム設計書、i…項目名、v…テンプレート変数、L…行番号対応情報、d…差分情報、a…分析結果情報。

【特許請求の範囲】
【請求項1】
データの項目名を含むプログラム設計書及び前記項目名に対応するテンプレート変数を含んで予め記述されたソースコードを有してプログラムの雛形を示すテンプレート情報に基づいて、第1プログラムを生成するプログラム生成装置と、前記生成された第1プログラム及び当該第1プログラムのソースコードの少なくとも一部に変更が施された第2プログラムを記憶するプログラム記憶装置と、前記プログラム設計書内の項目名及び当該項目名と置換可能なテンプレート変数を関連付けて記憶する項目名/変数対応情報記憶装置とに接続され、前記プログラム設計書を記憶するプログラム設計書記憶手段と、前記テンプレート情報内のソースコードの行番号を示すテンプレート行番号情報と、このテンプレート行番号情報によって示されるソースコードに基づいて生成された第1プログラムのソースコードの行番号を示す行番号情報とを関連付けた行番号対応情報を記憶する行番号対応情報記憶手段と、前記第1プログラム、前記第2プログラム及び前記テンプレート情報を一時的に記憶するメモリとを備えたテンプレート情報生成装置のプログラムであって、
前記テンプレート情報生成装置を、
前記プログラム設計書の入力を受け付けると、当該受け付けたプログラム設計書を前記プログラム設計書記憶手段に書込む手段、
前記第1プログラム、前記第2プログラム及び前記テンプレート情報の入力を受け付けると、当該受け付けた第1プログラム、当該第2プログラム及び当該テンプレート情報を前記メモリに書込む手段、
前記メモリ内のテンプレート情報及び第1プログラムに基づいて、前記行番号対応情報を生成し、当該生成された行番号対応情報を前記行番号対応情報記憶手段に書込む手段、
前記第1プログラムのソースコードと前記第2プログラムのソースコードとの差分に対応する当該第1プログラムのソースコードの行番号を示す第1行番号情報と、当該差分に対応する第2プログラムのソースコードの行番号を示す第2行番号情報と、当該第1プログラムのソースコードに施された変更の型が追加、削除及び更新のいずれであるかを示す変更型情報とを含む差分情報を生成する手段、
前記生成された差分情報内の変更型情報が削除を示すか否かを判定する変更型判定手段、
前記変更型判定手段による判定の結果、否のとき、前記生成された差分情報内の第2行番号情報によって示されるソースコードを前記メモリから読出し、当該読出されたソースコードに前記項目名が含まれているか否かを判定する項目名判定手段、
前記項目名判定手段による判定結果が前記項目名が含まれている旨を示すとき、当該項目名に基づいて前記項目名/変数対応情報記憶装置からテンプレート変数を読出し、前記第2行番号情報によって示されるソースコードに含まれている当該項目名を当該読出されたテンプレート変数に置換することにより、前記第2行番号情報によって示されるソースコードの雛形を示す部分テンプレート情報を生成する手段、
前記生成された部分テンプレート情報及び前記記憶されたテンプレート情報に基づいて、当該部分テンプレート情報及び当該テンプレート情報を統合するための条件を示す統合条件情報を含む分析結果情報を生成する分析結果情報生成手段、
前記生成された分析結果情報及び前記記憶された行番号対応情報に基づいて、前記生成された部分テンプレート情報及び前記テンプレート情報を統合するテンプレート情報統合手段、
として機能させるためのテンプレート情報生成プログラム。
【請求項2】
請求項1に記載のテンプレート情報生成プログラムにおいて、
前記分析結果情報生成手段は、
前記メモリに記憶されたテンプレート情報及び前記生成された部分テンプレート情報を比較することによって、当該テンプレート情報と当該部分テンプレート情報との一致するソースコードを検出し、当該検出されたソースコードに基づいて、当該部分テンプレート情報を出力するための条件を示すソースコードである出力条件情報を当該テンプレート情報から抽出する手段と、
前記抽出された出力条件情報と、前記生成された差分情報内の第1行番号情報によって示されるソースコードとに基づいて、当該ソースコードに含まれる前記項目名を含み、当該部分テンプレート情報を当該テンプレート情報に適用するための条件を示すソースコードである適用条件情報を生成する手段と、
前記生成された差分情報内の第1行番号情報によって示されるソースコードと、前記メモリに記憶された第1プログラムのソースコードとを比較することによって、当該第1行番号情報によって示されるソースコードが当該第1プログラムの全てのソースコードと一致するか否かを判定するソースコード一致判定手段と、
前記ソースコード一致判定手段による判定結果が一致する旨を示すとき、前記メモリに記憶されたテンプレート情報のソースコードを前記生成された部分テンプレート情報のソースコードに置換する旨を示す前記統合条件情報を生成する手段と、
前記ソースコード一致判定手段による判定結果が否を示すとき、前記メモリに記憶されたテンプレート情報のソースコードに前記生成された部分テンプレート情報のソースコードを追加する旨を示す前記統合条件情報を生成する手段と、
前記生成された適用条件情報及び前記生成された統合条件情報を含む分析結果情報を生成する手段と
を備えたことを特徴とするテンプレート情報生成プログラム。
【請求項3】
請求項1に記載のテンプレート情報生成プログラムにおいて、
前記変更型判定手段による判定の結果、前記変更型情報が削除を示すとき、前記生成された差分情報内の第1行番号情報によって示されるソースコードに基づいて、当該ソースコードに含まれる前記項目名を含み、前記第1プログラムのソースコードに施された削除を前記記憶されたテンプレート情報に適用するための条件を示すソースコードである適用条件情報を生成する手段と、
前記記憶された行番号対応情報に基づいて、前記生成された適用条件情報を前記記憶されたテンプレート情報に追加する手段と
を更に備えたことを特徴とするテンプレート情報生成プログラム。
【請求項4】
データの項目名を含むプログラム設計書及び前記項目名に対応するテンプレート変数を含んで予め記述されたソースコードを有してプログラムの雛形を示すテンプレート情報に基づいて、第1プログラムを生成するプログラム生成装置と、前記生成された第1プログラム及び当該第1プログラムのソースコードの少なくとも一部に変更が施された第2プログラムを記憶するプログラム記憶装置と、前記プログラム設計書内の項目名及び当該項目名と置換可能なテンプレート変数を関連付けて記憶する項目名/変数対応情報記憶装置とに接続されたテンプレート情報生成装置であって、
前記プログラム設計書を記憶するプログラム設計書記憶手段と、
前記テンプレート情報内のソースコードの行番号を示すテンプレート行番号情報と、このテンプレート行番号情報によって示されるソースコードに基づいて生成された第1プログラムのソースコードの行番号を示す行番号情報とを関連付けた行番号対応情報を記憶する行番号対応情報記憶手段と、
前記第1プログラム、前記第2プログラム及び前記テンプレート情報を一時的に記憶するメモリと、
前記プログラム設計書の入力を受け付けると、当該受け付けたプログラム設計書を前記プログラム設計書記憶手段に書込む手段と、
前記第1プログラム、前記第2プログラム及び前記テンプレート情報の入力を受け付けると、当該受け付けた第1プログラム、当該第2プログラム及び当該テンプレート情報を前記メモリに書込む手段と、
前記メモリ内のテンプレート情報及び第1プログラムに基づいて、前記行番号対応情報を生成し、当該生成された行番号対応情報を前記行番号対応情報記憶手段に書込む手段と、
前記第1プログラムのソースコードと前記第2プログラムのソースコードとの差分に対応する当該第1プログラムのソースコードの行番号を示す第1行番号情報と、当該差分に対応する第2プログラムのソースコードの行番号を示す第2行番号情報と、当該第1プログラムのソースコードに施された変更の型が追加、削除及び更新のいずれであるかを示す変更型情報とを含む差分情報を生成する手段と、
前記生成された差分情報内の変更型情報が削除を示すか否かを判定する変更型判定手段と、
前記変更型判定手段による判定の結果、否のとき、前記生成された差分情報内の第2行番号情報によって示されるソースコードを前記メモリから読出し、当該読出されたソースコードに前記項目名が含まれているか否かを判定する項目名判定手段と、
前記項目名判定手段による判定結果が前記項目名が含まれている旨を示すとき、当該項目名に基づいて前記項目名/変数対応情報記憶装置からテンプレート変数を読出し、前記第2行番号情報によって示されるソースコードに含まれている当該項目名を当該読出されたテンプレート変数に置換することにより、前記第2行番号情報によって示されるソースコードの雛形を示す部分テンプレート情報を生成する手段と、
前記生成された部分テンプレート情報及び前記記憶されたテンプレート情報に基づいて、当該部分テンプレート情報及び当該テンプレート情報を統合するための条件を示す統合条件情報を含む分析結果情報を生成する分析結果情報生成手段と、
前記生成された分析結果情報及び前記記憶された行番号対応情報に基づいて、前記生成された部分テンプレート情報及び前記テンプレート情報を統合するテンプレート情報統合手段と
を備えたことを特徴とするテンプレート情報生成装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate


【公開番号】特開2012−159922(P2012−159922A)
【公開日】平成24年8月23日(2012.8.23)
【国際特許分類】
【出願番号】特願2011−17746(P2011−17746)
【出願日】平成23年1月31日(2011.1.31)
【出願人】(000003078)株式会社東芝 (54,554)
【出願人】(301063496)東芝ソリューション株式会社 (1,478)
【Fターム(参考)】