JP4686117B2 - ソースコード変換装置、ソースコード変換方法、およびプログラム - Google Patents
ソースコード変換装置、ソースコード変換方法、およびプログラム Download PDFInfo
- Publication number
- JP4686117B2 JP4686117B2 JP2003161029A JP2003161029A JP4686117B2 JP 4686117 B2 JP4686117 B2 JP 4686117B2 JP 2003161029 A JP2003161029 A JP 2003161029A JP 2003161029 A JP2003161029 A JP 2003161029A JP 4686117 B2 JP4686117 B2 JP 4686117B2
- Authority
- JP
- Japan
- Prior art keywords
- conversion
- application resource
- definition
- resource template
- screen
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
Description
【発明の属する技術分野】
本発明は、過去に開発されたアプリケーションプログラム(以下、単に「アプリケーション」という)のソースコードを、移行したい環境(以下、「ターゲット環境」という)で動作するように変換する技術に関し、特に、ターゲット環境における標準化されたフレームワークに適合するようにソースコードの変換を行うソースコード変換装置等に関する。
【0002】
【従来の技術】
今日、WebSphere Application ServerをはじめとするJ2EE(Java 2 Enterprise Edition)環境の普及により、過去に開発された既存アプリケーションをJ2EE環境に移行させ稼動させたいという要求が増えてきている(WebSphereは、IBM Corporationの米国およびその他の国における商標。)。しかし、そのような既存アプリケーションは、J2EE環境で動作するアプリケーションの開発言語であるJAVAとは異なる言語、例えば、Visual Basic等で開発されている場合が多い(JAVAおよびすべてのJAVA関連の商標およびロゴは、Sun Microsystems, Inc.の米国およびその他の国における商標または登録商標。Visual Basicは、米国およびその他の国における米国Microsoft Corp.の登録商標。)。また、クラスライブラリ(例えば、DBアクセス)、フレームワークのみならず、アプリケーションの稼動形態においてもJ2EE環境とは異なる場合が多い。例えば、既存アプリケーションの環境が、アプリケーションのロジックが配置されるクライアントと、アプリケーションが使用するデータが配置されるサーバという2階層の構造をしているのに対し、J2EE環境が、画面表示を主に行うクライアントと、アプリケーションのロジックが配置されるアプリケーションサーバと、アプリケーションが使用するデータが配置されるデータベースサーバという3階層の構造をしている等の違いである。従って、既存アプリケーションをJ2EE環境に移行するのは容易ではなく、その作業には多大な工数が必要となる。
【0003】
そこで、過去に開発されたアプリケーションの新しい環境への移行を支援するため、従来は、既存システムを解析し、新システム構築の際に必要となる画面情報を出力したり(例えば、特許文献1参照。)、既存システムを解析し、新システムのインターフェース情報(画面定義情報・画面動作情報・画面遷移情報)を再生成したりしていた(例えば、特許文献2参照。)。
【0004】
【特許文献1】
特開2001−027946号公報(第3−5頁、図2)
【特許文献2】
特開2001−134423号公報(第2−4頁、図2)
【0005】
【発明が解決しようとする課題】
ところで、近年、アプリケーション移行時における、品質、生産性、保守性向上の観点から、フレームワークを採用するケースが増えている。フレームワークとは、Webアプリケーションを開発するための枠組みであり、規定されていない細部を規定することによって1つの完成したWebアプリケーションを効率的に開発できるようにするためのものである。フレームワークには、例えば、アパッチ・ソフトウェア・ファウンデーションの「Jakartaプロジェクト」が開発する「Struts」のように急速に人気を集め、標準的に用いられているものも存在する。
【0006】
しかしながら、特許文献1、2には、既存システムにおけるインターフェース情報を表示することで新システムにおけるインターフェース情報の構築作業を軽減することしか述べられておらず、新システムで採用するWebアプリケーションフレームワークに適合するようにインターフェース情報を変換することは行っていなかった。即ち、ターゲット環境における標準化されたフレームワークを利用することによる利点を減ずることなく既存アプリケーションのソースコードをターゲット環境で動作するように変換することはできないという問題点があった。
【0007】
本発明は、以上のような技術的課題を解決するためになされたものであって、その目的は、既存アプリケーションのソースコードを、ターゲット環境における標準化されたフレームワークを利用することによる利点を減ずることなく、ターゲット環境で動作するように変換することにある。
また他の目的は、既存アプリケーションのソースコードをターゲット環境における標準化されたフレームワークに適合させるための変換を柔軟に行えるようにすることにある。
更に他の目的は、既存アプリケーションのソースコードを複数のフレームワークのうちの所望のものに適合するよう変換できるようにすることにある。
【0008】
【課題を解決するための手段】
かかる目的のもと、本発明は、既存アプリケーションのソースコードを、ターゲット環境におけるアプリケーションリソーステンプレートに変換している。即ち、本発明のソースコード変換装置は、アプリケーションプログラムのソースコードを解析して解析情報(図1の画面解析情報に対応)を生成する解析手段(図1の画面解析処理部11に対応)と、この解析手段により生成された解析情報を予め定められた変換規則(変換ルール)に従って変換することで、所定のターゲット環境におけるアプリケーションリソーステンプレートを生成する変換手段(図1の要素変換処理部13に対応)とを備えている。
【0009】
また、本発明において、既存アプリケーションのソースコードを解析して得られる画面解析情報は、ソースコードから抽出した各要素を細分化し、分離して保持するようにしている。即ち、本発明のソースコード変換装置において、解析手段は、ソースコードから複数の要素を抽出し、各要素を分離して解析情報に含めることを特徴とする。尚、この場合、変換規則が、解析情報に含まれる変換前の要素または要素集合と、アプリケーションリソーステンプレートに含まれる変換後の要素との対応を規定し、変換手段が、変換規則を参照し、変換前の要素または要素集合を、対応する変換後の要素に変換するようにすることができる。また、変換規則が、複数のターゲット環境の各々に対応して設けられ、変換手段が、解析情報を、要求されたターゲット環境に対応する変換規則に従って変換するようにすることもできる。
【0010】
一方、本発明のソースコード変換装置は、アプリケーションリソーステンプレートを予め定められた配置規則(配置ルール)に従ってターゲット環境に配置することで、アプリケーションテンプレートを生成する配置手段(図1の要素配置処理部15に対応)を更に備える。
【0011】
また、配置規則が、アプリケーションリソーステンプレートと、アプリケーションリソーステンプレートをターゲット環境に配置するための配置処理情報との対応を規定し、配置手段が、配置規則を参照し、アプリケーションリソーステンプレートを配置処理情報に基づいてターゲット環境に配置するようにすることができる。更に、配置手段は、配置処理情報がターゲット環境におけるアプリケーションリソーステンプレートの配置位置をユーザが指定可能なことを示す場合に、配置位置をユーザに指定させることもできる。更にまた、配置規則が、複数のターゲット環境の各々に対応して設けられ、配置手段が、アプリケーションリソーステンプレートを、要求されたターゲット環境に対応する配置規則に従って配置するようにすることもできる。
【0012】
他の観点から捉えると、本発明のソースコード変換方法は、アプリケーションプログラムのソースコードを解析して解析情報を生成するステップ(図4のステップ101に対応)と、生成された解析情報(図4の画面解析情報に対応)を予め記憶装置に記憶された変換規則(変換ルール)に従って変換することで、所定のターゲット環境におけるアプリケーションリソーステンプレートを生成するステップ(図4のステップ104〜106に対応)と、生成されたアプリケーションリソーステンプレートを予め記憶装置に記憶された配置規則(配置ルール)に従ってターゲット環境に配置することで、アプリケーションテンプレートを生成するステップ(図4のステップ107、108に対応)とを含んでいる。
【0013】
また、解析情報を生成するステップでは、ソースコードから複数の要素を抽出し、各要素を分離して木構造で表現した中間ソースコードを、解析情報として記憶することを特徴とする。尚、この場合、アプリケーションリソーステンプレートを生成するステップでは、記憶装置から、変換前の要素または要素集合と変換後の要素とを対応付けた変換規則を読み出し、その変換規則において変換前の要素または要素集合として規定される解析情報内の要素を、対応する変換後の要素に変換することで、解析情報を変換するようにすることができる。また、アプリケーションリソーステンプレートを生成するステップでは、記憶装置に記憶された複数の変換規則のうち、要求されたターゲット環境に対応する変換規則を読み出し、解析情報をその変換規則に従って変換するようにすることもできる。
【0014】
更に、アプリケーションテンプレートを生成するステップでは、記憶装置から、各アプリケーションリソーステンプレートと各アプリケーションリソーステンプレートをターゲット環境に配置するための配置処理情報とを対応付けた配置規則を読み出し、アプリケーションリソーステンプレートを対応する配置処理情報に基づいてターゲット環境に配置するようにすることができる。更にまた、アプリケーションテンプレートを生成するステップでは、記憶装置に記憶された複数の配置規則のうち、要求されたターゲット環境に対応する配置規則を読み出し、アプリケーションリソーステンプレートをその配置規則に従って配置するようにすることもできる。
【0015】
ここで、本発明は、コンピュータに所定の機能を実現させるプログラムとして把握することができる。即ち、本発明のプログラムは、コンピュータに、アプリケーションプログラムのソースコードを解析して解析情報(図1の画面解析情報に対応)を生成する機能(図1の画面解析処理部11に対応)と、生成された解析情報を予め記憶装置に記憶された変換規則(変換ルール)に従って変換することで、所定のターゲット環境におけるアプリケーションリソーステンプレートを生成する機能(図1の要素変換処理部13に対応)と、生成されたアプリケーションリソーステンプレートを予め記憶装置に記憶された配置規則(配置ルール)に従ってターゲット環境に配置することで、アプリケーションテンプレートを生成する機能(図1の要素配置処理部15に対応)とを実現させる。
【0016】
また、解析情報を生成する機能では、ソースコードから複数の要素を抽出し、各要素を分離して木構造で表現した中間ソースコードを、解析情報として記憶する機能を更に実現させることを特徴とする。尚、この場合、アプリケーションリソーステンプレートを生成する機能では、記憶装置に記憶された複数の変換規則のうち、要求されたターゲット環境に対応する変換規則を読み出し、解析情報をその変換規則に従って変換する機能を更に実現させることができる。また、アプリケーションテンプレートを生成する機能では、記憶装置に記憶された複数の配置規則のうち、要求されたターゲット環境に対応する配置規則を読み出し、アプリケーションリソーステンプレートをその配置規則に従って配置する機能を更に実現させることもできる。
【0017】
【発明の実施の形態】
以下、添付図面に示す実施の形態に基づいて本発明を詳細に説明する。
図1は、本実施の形態の全体構成を示すブロック図である。図1に示すように、本実施の形態は、既存アプリケーションソースコード記憶部10と、画面解析処理部11と、画面解析情報記憶部12と、要素変換処理部13と、新規アプリケーションリソーステンプレート記憶部14と、要素配置処理部15と、新規アプリケーションテンプレート記憶部16とを含む。
【0018】
既存アプリケーションソースコード記憶部10は、過去に開発された既存アプリケーションのソースコードを記憶する部分である。アプリケーションは、通常、画面定義部、操作仕様実装部、業務仕様実装部から構成されるが、本実施の形態では、画面解析処理部11がこれらのうち画面定義部と操作仕様実装部のみを解析するので、この2つの部分を四角囲みで示している。
【0019】
画面解析処理部11は、既存アプリケーションソースコード記憶部10に記憶された既存アプリケーションソースコードの画面定義部と操作仕様実装部とから、画面定義、画面遷移定義、イベント定義のみを抽出し、画面解析情報を生成して画面解析情報記憶部12に記憶する部分である。
【0020】
画面解析情報記憶部12は、画面解析処理部11により抽出された画面解析情報を記憶する部分である。画面解析情報内の要素としては、画面定義、画面遷移定義、イベント定義がある。また、画面定義内の要素としては、画面要素定義、各画面要素属性があり、画面遷移定義内の要素としては、遷移元画面、遷移先画面・状態、遷移条件、遷移起動イベントがあり、イベント定義内の要素としては、イベントソース、イベント種別がある。尚、画面解析情報は、再利用可能な中間形式のフォーマットで保持される。例えば、各要素をXML形式等の木構造で記述したソースコード(以下、「中間ソースコード」という)として保持される。この中間ソースコードにおいて、要素間の関係は、親子関係または接続要素で保持され、要素集合変換時に必要とする要素を収集し易くしている。
【0021】
要素変換処理部13は、画面解析情報記憶部12から画面解析情報を入力し、要求されたターゲット環境の種別に応じた変換ルールに従い各要素を変換して新規アプリケーションリソーステンプレートを生成し、新規アプリケーションリソーステンプレート記憶部14に出力する部分である。例えば、要求され得るターゲット環境として、StrutsとXFormsとがあれば、Struts用変換ルールとXForms用変換ルールとが用意され、要求されたターゲット環境に応じてこのいずれかが選択され用いられる。
【0022】
新規アプリケーションリソーステンプレート記憶部14は、要素変換処理部13により生成された新規アプリケーションリソーステンプレートを記憶する部分である。ここで、「アプリケーションリソーステンプレート」とは、フレームワークにおいて必要となるファイルのことで、以下、単に「リソース」ともいう。これには、例えば、画面リソース、構成ファイル、ソースコード等がある。
【0023】
要素配置処理部15は、新規アプリケーションリソーステンプレート記憶部14に記憶されたアプリケーションリソーステンプレートを要求されたターゲット環境の種別に応じた配置ルールに従い配置して新規アプリケーションテンプレートを生成し、新規アプリケーションテンプレート記憶部16に出力する部分である。例えば、要求され得るターゲット環境として、StrutsとXFormsとがあれば、Struts用配置ルールとXForms用配置ルールとが用意され、要求されたターゲット環境に応じてこのいずれかが選択され用いられる。尚、これらの配置ルールに定義される配置情報については、対象Webアプリケーションフレームワークに応じてそのデフォルト値が与えられている。また、対象Webアプリケーションフレームワークにおける配置情報をユーザが必要に応じて入力し画面解析情報に付加することもできるようになっている。
【0024】
新規アプリケーションテンプレート記憶部16は、要素配置処理部15により生成された新規アプリケーションテンプレートを記憶する部分である。ここで、「アプリケーションテンプレート」とは、フレームワークにリソースが配置されたものである。例えば、要求され得るターゲット環境として、StrutsとXFormsとがあれば、Struts用新規アプリケーションテンプレートと、XForms用新規アプリケーションテンプレートとが生成可能である。
【0025】
尚、本実施の形態は、コンピュータシステムにより実現される。本実施の形態を実現するコンピュータシステムのハードウェア構成は、中央処理装置(CPU)、主記憶装置、ハードディスク装置等の補助記憶装置、入力装置、出力装置を備えた一般的なものでよい。
補助記憶装置には、画面解析処理部11、要素変換処理部13、要素配置処理部15を実現するためのプログラムが記憶され、CPUがこのプログラムを主記憶装置に読み込んで実行することにより、画面解析処理部11、要素変換処理部13、要素配置処理部15が実現される。また、補助記憶装置は、既存アプリケーションソースコード記憶部10、新規アプリケーションリソーステンプレート記憶部14、新規アプリケーションテンプレート記憶部16としても機能する。更に、要素変換処理部13で用いられる変換ルール、要素配置処理部15で用いられる配置ルールを補助記憶装置に記憶するようにしてもよい。
【0026】
次に、画面解析処理部11および要素変換処理部13における処理を、概念図を参照しながら説明する。ここでは、既存アプリケーションの開発言語としてよく用いられるVisual Basicで開発されたアプリケーションを、J2EE環境でよく用いられるStrutsフレームワークのリソースへ変換する場合を例にとって説明する。但し、既存アプリケーションの開発言語はVisual Basicに限られるものではなく、ターゲット環境における開発言語と異なるものであれば、如何なる言語であってもよい。また、ターゲット環境もStrutsフレームワークに限らず、XForms等、他の環境であってよい。
【0027】
まず、画面解析処理部11がVisual Basicで記述されたアプリケーションの各要素を画面解析情報の各要素に変換する時の処理について説明する。
Visual Basicで記述されたアプリケーションは、イベントドリブンであるので、画面要素とイベントハンドラ、イベントハンドラ内の各要素が密に結合している。従って、そのまま、アプリケーション構造を変換することは容易でない。そこで、本実施の形態では、Visual Basicの各要素を細分化し、それら要素間の結合を緩めて保持するようにしている。これにより、Webアプリケーションフレームワークへの柔軟な変換機構を実現している。
【0028】
図2に、具体的な変換の様子を示す。図2では、左側に、Visual Basicで記述されたアプリケーションにおける各要素が示され、右側に、画面解析情報における各要素が示される。この変換処理において、Visual Basicにおける画面定義は、画面解析情報における画面定義(画面要素定義、各画面要素属性)に変換され、Visual Basicにおけるイベントハンドラは、画面解析情報における画面遷移定義(遷移元画面、遷移先画面・状態、遷移起動イベント)に変換され、Visual Basicにおける起動イベントは、画面解析情報におけるイベント定義(イベントソース、イベント種別)に変換されている。
【0029】
次に、要素変換処理部13が画面解析情報の各要素をWebアプリケーションフレームワークのリソースに変換する時の処理について説明する。
図3に、具体的な変換の様子を示す。図3では、左側に、画面解析情報における各要素が示され、右側に、Strutsフレームワークにおけるリソースが示される。この変換処理において、画面解析情報における画面定義は、StrutsフレームワークにおけるJSPに変換され、画面解析情報における画面遷移定義は、StrutsフレームワークにおけるAction Classに変換され、画面解析情報におけるイベント定義および遷移先画面は、Strutsフレームワークにおけるstruts-config.xmlに変換されている。
【0030】
次に、本実施の形態の動作について具体的に説明する。
図4は、本実施の形態の動作を示すフローチャートである。
【0031】
まず、画面解析処理部11は、画面解析情報記憶部12に記憶される画面解析情報の木構造を生成する(ステップ101)。
ここで、このステップにおける処理について、図5〜7を参照しながら具体例に説明する。例えば、ユーザより、図5の右側に示されたソースコード(図6、7の右側に示されたソースコードも同じ)が入力されたとする。
画面解析処理部11は、ソースコード内の画面定義部、操作仕様実装部を解析することで、画面定義、画面遷移定義、イベント定義を出力する。
【0032】
まず、画面解析処理部11は、図5に(1)として示すように、Visual Basicソースコードのフォーム、コントロールの定義部分から画面定義を抽出する。具体的には、中間ソースコードに、"frmRingi"を定義する<page>要素と、"frmLogin"を定義する<page>要素とを生成し、"frmLogin"を定義する<page>要素内に更に"cmdOK"を定義する<part>要素を生成する。
【0033】
次に、画面解析処理部11は、図5に(2)として示すように、Visual Basicソースコードからイベントハンドラを抽出する。具体的には、中間ソースコードに、"frmLogin.cmdOK_Click"を定義する<action>要素を生成する。
【0034】
また、画面解析処理部11は、図5に(3)として示すように、イベントソースとイベントハンドラとの接続を行う。具体的には、"frmLogin"を定義する<page>要素内に"toFrmLogin_cmdOK_Click"を<exit-port>要素として設ける共に、"frmLogin.cmdOK_Click"を定義する<action>要素内に"default"を<entry-port>要素として設け、これらの<exit-port>要素と<entry-port>要素とを<connection>要素にて接続する(右側の矢印)。また、"frmLogin"を定義する<page>要素内に<exit-port>要素として設けられた"toFrmLogin_cmdOK_Click"を、"cmdOK"を定義する<part>要素内にも<exit-port>要素として設ける(左側の矢印)。
【0035】
更に、画面解析処理部11は、図6に(4)として示すように、画面遷移定義の抽出を行う。具体的には、"frmRingi"を定義する<page>要素内に"fromFrmLogin"を<entry-port>要素として設けると共に、"frmLogin.cmdOK_Click"を定義する<action>要素内に"toFrmRingi"を<exit-port>要素として設け、これらの<entry-port>要素と<exit-port>要素とを<connection>要素にて接続する(矢印)。また、"frmLogin"を定義する<page>要素内に"default"を<entry-port>要素として設けると共に、"frmLogin.cmdOK_Click"を定義する<action>要素内に"toDefault"を<exit-port>要素として設け、これらの<entry-port>要素と<exit-port>要素とを<connection>要素にて接続する。
【0036】
また、画面解析処理部11は、図7に(5)として示すように、条件分岐と画面遷移の抽出を行う。具体的には、Visual Basicソースコードから抽出した条件分岐を、"frmLogin.cmdOK_Click"を定義する<action>要素内に<logic>要素として展開し、<action>要素内に<exit-port>要素として設けられた"toFrmRingi"および"toDefault"を<logic>要素内に<exit-port>要素として設ける(矢印)。
【0037】
図5〜7の右側に示されたソースコードは、以上のような処理により、中間ソースコードに変換される。
【0038】
再び図4に戻り、説明を続ける。
要素変換処理部13は、画面解析情報記憶部12に記憶された画面解析情報、即ち、木構造の中間ソースコードの中から次の要素を選択する(ステップ102)。選択すべき要素(選択要素)が存在しない場合(ステップ103でNO)、処理は終了するが、選択要素が存在する場合(ステップ103でYES)、選択要素に対する変換ルールが存在するかどうか判定する(ステップ104)。ここで変換ルールが存在すると判定された場合、要素変換処理部13は、変換ルールに規定された関連要素を収集し(ステップ105)、選択要素および関連要素を含む要素集合に対して変換ルールを適用し、新規アプリケーションリソーステンプレートとして出力する(ステップ106)。
【0039】
次に、要素配置処理部15が、選択要素に対する配置ルールが存在するかどうか判定する(ステップ107)。そして、配置ルールが存在すると判定された場合、選択要素に対して配置ルールを適用し、選択要素の配置位置を決定する(ステップ108)。尚、配置ルールは、1つのアプリケーションリソーステンプレートにつき1つの選択要素に対して定義されており、選択要素に対する配置ルールの決定は、即ち、アプリケーションリソーステンプレートのフレームワークにおける配置位置の決定を意味する。従って、ステップ106で出力された新規アプリケーションリソーステンプレートのフレームワークにおける配置位置がステップ108で決定され、結果として、新規アプリケーションリソーステンプレートがフレームワークに配置された新規プリケーションテンプレートが生成されることになる。
【0040】
ここで、ステップ103〜108における処理について、図8〜12を参照しながら具体例に説明する。
まず、要素変換処理部13で用いられる変換ルールおよび要素配置処理部15で用いられる配置ルールについて説明する。
図8は、変換・配置ルールの例である。変換ルールおよび配置ルールは、対象フレームワーク種別、各フレームワーク内でのリソース種別毎に定義される。図8は、Strutsフレームワークについての例である。従って、XFormsについては、その特性に応じた別の変換・配置ルールが存在する。また、Strutsフレームワークのリソース種別としては、JSP、CSS、Action Class、ActionForm Class、struts-config.xmlがあるが、ここでは、JSP、Action Class、struts-config.xmlについての変換・配置ルールのみを示している。尚、図8では、変換ルールと配置ルールとを同じテーブルで管理しているが、別々のテーブルで管理するようにしてもよい。その場合、配置ルールについては、変換要素ごとではなく、リソースごとに定義してもよい。そして、ステップ104〜106を選択要素ごとの処理とし、ステップ107、108はリソースごとの処理としてもよい。
【0041】
次に、図8に示された変換・配置ルールのうち、変換ルールを用いて具体的な中間ソースコードを変換する処理について説明する。尚、図4のフローチャートでは、全ての変換ルールを同時に適用することを前提としていたが、以下では、説明を分かり易くするため、リソースごとに変換ルールを適用することとする。
また、入力としては、図9の左側に示す中間ソースコード(図10、11の左側に示された中間ソースコードも同じ)が与えられるとする。尚、この中間ソースコードは、図5〜7の処理により生成された中間ソースコードである。図5〜7では、中間ソースコードを定義抽出のフェーズに分けて記述したが、抽出された各定義を統合すると図9〜11に示すような中間ソースコードとなる。中間ソースコードは、大きく分けて、<page>で始まり</page>で終わる<page>要素と、<action>で始まり</action>で終わる<action>要素とから構成される。図3の概念図で言えば、<page>要素は、画面定義に相当する部分であり、<action>要素は、画面遷移定義に相当する部分である。また、図3の概念図におけるイベント定義は、図9〜11の中間ソースコードでは、<page>要素と<action>要素とを接続する部分(<connection>要素)に相当する。
【0042】
まず、図9を参照して、中間ソースコードをJSPに変換する場合について説明する。
図8のJSP変換・配置ルールに<page>要素が変換要素として定義されているので、要素変換処理部13は、中間ソースコードの"frmRingi"を定義する<page>要素に着目する。また、図8のJSP変換・配置ルールに<page>要素に対する関連要素として<property>子要素、<entry-port>子要素、<exit-port>子要素、接続されている<action>要素が定義されているので、要素変換処理部13は、中間ソースコードからこれらに対応する要素を収集する。この場合、<entry-port>子要素、<property>子要素が収集される。そして、図8のJSP変換・配置ルールに変換後の要素として<html:form/>が定義されているので、要素変換処理部13は、"frmRingi"を定義する<page>要素、収集された<entry-port>子要素、<property>子要素を、<html:form/>要素に変換する。尚、図8においては、<entry-port>子要素、<property>子要素の変換結果の記述については省略してある。
【0043】
また、要素変換処理部13は、同様にして、中間ソースコードの"frmLogin"を定義する<page>要素に着目し、その関連要素として、<entry-port>子要素、<exit-port>子要素、<action>要素を収集する。そして、要素変換処理部13は、"frmLogin"を定義する<page>要素、収集された<entry-port>子要素、<exit-port>子要素、<action>要素を、<html:form/>要素に変換する。尚、図8においては、<entry-port>子要素、<exit-port>子要素の変換結果の記述については省略してある。
【0044】
更に、図8のJSP変換・配置ルールにclass属性がbuttonの<part>要素が変換要素として定義されているので、要素変換処理部13は、中間ソースコードの"cmdOK"を定義する<part>要素に着目する。また、図8のJSP変換・配置ルールにclass属性がbuttonの<part>要素に対する関連要素として<property>子要素、<exit-port>子要素が定義されているので、要素変換処理部13は、中間ソースコードからこれらに対応する要素を収集する。この場合、<exit-port>子要素が収集される。そして、図8のJSP変換・配置ルールに変換後の要素として<html:submit/>が定義されているので、要素変換処理部13は、"cmdOK"を定義する<part>要素、収集された<exit-port>子要素を、<html:submit/>要素に変換する。尚、図8においては、<exit-port>子要素の変換結果の記述については省略してある。
【0045】
次に、図10を参照して、中間ソースコードをAction Classに変換する場合について説明する。
図8のAction Class変換・配置ルールに<action>要素が変換要素として定義されているので、要素変換処理部13は、中間ソースコードの"frmLogin.cmdOK_Click"を定義する<action>要素に着目する。そして、図8のAction Class変換・配置ルールに<action>要素に対する関連要素が定義されておらず、変換後の要素としてJAVAクラスが定義されているので、要素変換処理部13は、"frmLogin.cmdOK_Click"を定義する<action>要素をJAVAクラスの記述に変換する。
【0046】
また、図8のAction Class変換・配置ルールに<choice>要素が変換要素として定義されているので、要素変換処理部13は、<choice>要素に着目する。また、図8のAction Class変換・配置ルールに<choice>要素に対する関連要素として<when-if>要素、<when-else>要素が定義されているので、要素変換処理部13は、中間ソースコードから<when-if>要素、<when-else>要素を収集する。そして、図8のAction Class変換・配置ルールに変換後の要素としてIfステートメントが定義されているので、要素変換処理部13は、<choice>要素をIfステートメントに変換する。
【0047】
更に、図8のAction Class変換・配置ルールに<exit-port>要素が変換要素として定義されているので、要素変換処理部13は、中間ソースコードの<exit-port>要素に着目する。そして、図8のAction Class変換・配置ルールに<exit-port>要素に対する関連要素が定義されておらず、変換後の要素として画面遷移先を決定するステートメントが定義されているので、要素変換処理部13は、<exit-port>要素を画面遷移先を決定するステートメントに変換する。
【0048】
続いて、図11を参照して、中間ソースコードをstruts-config.xmlに変換する場合について説明する。
まず、図8のstruts-config.xml変換・配置ルールにrootが変換要素として定義されており、それに対する変換後の要素として<struts-config/>が定義されているので、struts-config.xmlに<struts-config/>要素が記述される。
【0049】
次に、図8のstruts-config.xml変換・配置ルールに<page>要素が変換要素として定義されているので、要素変換処理部13は、中間ソースコードの"frmRingi"を定義する<page>要素に着目する。そして、図8のstruts-config.xml変換・配置ルールに<page>要素に対する関連要素が定義されておらず、変換後の要素として<form-bean/>が定義されているので、要素変換処理部13は、"frmRingi"を定義する<page>要素を<form-bean/>要素に変換する。
【0050】
また、要素変換処理部13は、同様にして、中間ソースコードの"frmLogin"を定義する<page>要素に着目し、この要素を<form-bean/>要素に変換する。
【0051】
更に、図8のstruts-config.xml変換・配置ルールに<action>要素が変換要素として定義されているので、要素変換処理部13は、"frmLogin.cmdOK_Click"を定義する<action>要素に着目する。また、図8のstruts-config.xml変換・配置ルールに、<action>要素に対する関連要素として、接続されている<page>要素が定義されているので、要素変換処理部13は、"frmLogin.cmdOK_Click"を定義する<action>要素に接続される<page>要素を収集する。この場合、"frmRingi"を定義する<page>要素、"frmLogin"を定義する<page>要素が収集される。そして、図8のstruts-config.xml変換・配置ルールに変換後の要素として<action/>が定義されているので、要素変換処理部13は、"frmLogin.cmdOK_Click"を定義する<action>要素、収集された"frmRingi"を定義する<page>要素、"frmLogin"を定義する<page>要素を、<action/>要素に変換する。
【0052】
また、図8のstruts-config.xml変換・配置ルールに<action>要素内の<exit-port>要素が変換要素として定義されているので、要素変換処理部13は、"frmLogin.cmdOK_Click"を定義する<action>要素内の"toFrmRingi"を定義する<exit-port>要素に着目する。そして、図8のstruts-config.xml変換・配置ルールに<action>要素内の<exit-port>要素に対する関連要素は定義されておらず、変換後の要素として<forward/>が定義されているので、要素変換処理部13は、"toFrmRingi"を定義する<exit-port>要素を<forward/>に変換する。
【0053】
更にまた、要素変換処理部13は、同様にして、"frmLogin.cmdOK_Click"を定義する<action>要素内の"toDefault"を定義する<exit-port>要素に着目し、この要素を<forward/>に変換する。
図9〜11の左側に示された中間ソースコードは、以上のような処理により、3つのリソース(JSP、Action Class、struts-config.xml)に変換される。
【0054】
次に、図8に示された変換・配置ルールのうち、配置ルールを用いてこれらの3つのリソースを配置する処理について説明する。尚、ここでは、便宜上、図8の要素ごとに定義された配置ルールを参照するが、実際の処理としては、リソースごとに定義された配置ルールを参照しても同様である。
【0055】
まず、Strutsフレームワークにおいて、JSPを配置する処理を説明する。
図8のJSP変換・配置ルールでは、配置ルールとして、location属性の位置という指定がなされている。従って、要素配置処理部15は、図12の中間ソースコードに示す"location"の指定に応じて配置位置を決定し、JSPをその決定された位置に配置する。尚、中間ソースコードにおける"location"の指定は、ユーザが付加することもできるが、ユーザから情報入力がない場合は、システムが保持するデフォルト値が設定される。
【0056】
次に、Strutsフレームワークにおいて、Action Classを配置する処理を説明する。
図8のAction Class変換・配置ルールでは、配置ルールとして、location属性の位置という指定がなされている。従って、要素配置処理部15は、JSPの場合と同様、中間ソースコードに示す"location"の指定に応じて配置位置を決定し、Action Classをその決定された位置に配置する。尚、中間ソースコードにおける"location"の指定は、ユーザが付加することもできるが、ユーザから情報入力がない場合は、システムが保持するデフォルト値が設定される。
【0057】
最後に、Strutsフレームワークにおいて、struts-config.xmlを配置する処理を説明する。
図8のstruts-config.xml変換・配置ルールでは、配置ルールとして、固定位置という指定がなされている。従って、要素配置処理部15は、struts-config.xmlを固定の位置に配置することを決定し、struts-config.xmlをその決定された位置に配置する。
【0058】
このように、本実施の形態では、既存アプリケーションのソースコードを、例えば、Strutsフレームワークにおける各リソースに変換している。仮に、既存アプリケーションのソースコードを独自のアプリケーション構造に変換することでターゲット環境での動作を保証したとすると、開発者はその独自のアプリケーション構造を習得する必要があり、開発者のスキルが追いつかなくなる事態が考えられる。これに対し、本実施の形態では、標準化されたフレームワークの利用を前提とした変換を行うため、開発者に新たなスキルの習得を要求しない。即ち、既存アプリケーションのソースコードを、フレームワークを利用することによる利点を減ずることなく、ターゲット環境で動作するように変換することを可能にしている。
また、既存アプリケーションのソースコードを解析して得られる画面解析情報は、ソースコードから抽出した各要素を細分化し、分離して保持するようにしている。これにより、既存アプリケーションのソースコードをターゲット環境における標準化されたフレームワークに適合させるための変換が柔軟に行えるようになる。
更に、変換・配置ルールは、複数のフレームワークに対して設け、その中から移行したいターゲット環境を選択できるようにしている。これにより、既存アプリケーションのソースコードを複数のフレームワークのうちの所望のものに適合するよう変換することを可能としている。
【0059】
【発明の効果】
このように、本発明によれば、既存アプリケーションのソースコードを、ターゲット環境における標準化されたフレームワークを利用することによる利点を減ずることなく、ターゲット環境で動作するように変換することが可能となる。
【図面の簡単な説明】
【図1】 本実施の形態の全体構成を示す図である。
【図2】 本実施の形態の画面解析処理部による処理内容を概念的に示す図である。
【図3】 本実施の形態の要素変換処理部による処理内容を概念的に示す図である。
【図4】 本実施の形態の処理動作を示すフローチャートである。
【図5】 本実施の形態によるVisual Basicソースコードから中間ソースコードへの変換についての説明をするための図である。
【図6】 本実施の形態によるVisual Basicソースコードから中間ソースコードへの変換についての説明をするための図である。
【図7】 本実施の形態によるVisual Basicソースコードから中間ソースコードへの変換についての説明をするための図である。
【図8】 本実施の形態で用いる変換・配置ルールの一例を示す図である。
【図9】 本実施の形態による中間ソースコードからStrutsフレームワークのリソースへの変換を説明するための図である。
【図10】 本実施の形態による中間ソースコードからStrutsフレームワークのリソースへの変換を説明するための図である。
【図11】 本実施の形態による中間ソースコードからStrutsフレームワークのリソースへの変換を説明するための図である。
【図12】 本実施の形態でリソースの配置位置を指定するlocation属性を説明するための図である。
【符号の説明】
10…既存アプリケーションソースコード記憶部、11…画面解析処理部、12…画面解析情報記憶部、13…要素変換処理部、14…新規アプリケーションリソーステンプレート記憶部、15…要素配置処理部、16…新規アプリケーションテンプレート記憶部
Claims (18)
- アプリケーションプログラムのソースコードを解析して、画面を定義する画面定義と、遷移元画面、遷移先画面、遷移条件を少なくとも定義する画面遷移定義と、画面遷移を起動するイベントを定義するイベント定義とを含む解析情報を生成する解析手段と、
前記解析手段により生成された前記解析情報に含まれる前記画面定義を予め定められた変換規則に従って変換することで、所定のフレームワークにおける第1のアプリケーションリソーステンプレートを生成し、当該解析情報に含まれる前記画面遷移定義を当該変換規則に従って変換することで、当該フレームワークにおける第2のアプリケーションリソーステンプレートを生成し、当該解析情報に含まれる前記イベント定義および前記画面遷移定義で定義された前記遷移先画面を当該変換規則に従って変換することで、当該フレームワークにおける第3のアプリケーションリソーステンプレートを生成する変換手段と
を備えたことを特徴とするソースコード変換装置。 - 前記解析手段は、前記ソースコードから前記画面定義と前記画面遷移定義と前記イベント定義とを抽出し、当該画面定義と当該画面遷移定義と当該イベント定義とを分離して前記解析情報に含めることを特徴とする請求項1記載のソースコード変換装置。
- 前記変換規則は、前記画面定義に含まれる第1の変換前の要素または要素集合と、前記第1のアプリケーションリソーステンプレートに含まれる第1の変換後の要素との対応、前記画面遷移定義に含まれる第2の変換前の要素または要素集合と、前記第2のアプリケーションリソーステンプレートに含まれる第2の変換後の要素との対応、および、前記イベント定義に含まれる第3の変換前の要素または要素集合と、前記第3のアプリケーションリソーステンプレートに含まれる第3の変換後の要素との対応を規定し、
前記変換手段は、前記変換規則を参照して、前記第1の変換前の要素または要素集合を前記第1の変換後の要素に変換し、前記第2の変換前の要素または要素集合を前記第2の変換後の要素に変換し、前記第3の変換前の要素または要素集合を前記第3の変換後の要素に変換することを特徴とする請求項2記載のソースコード変換装置。 - 前記変換規則は、複数のフレームワークの各々に対応して設けられ、
前記変換手段は、前記画面定義と前記画面遷移定義と前記イベント定義とを、要求されたフレームワークに対応する前記変換規則に従って変換することを特徴とする請求項1記載のソースコード変換装置。 - 前記第1のアプリケーションリソーステンプレートと前記第2のアプリケーションリソーステンプレートと前記第3のアプリケーションリソーステンプレートとを予め定められた配置規則に従って前記フレームワークに配置することで、アプリケーションテンプレートを生成する配置手段を更に備えたことを特徴とする請求項1記載のソースコード変換装置。
- 前記配置規則は、前記第1のアプリケーションリソーステンプレートと、前記第1のアプリケーションリソーステンプレートを前記フレームワークに配置するための第1の配置処理情報との対応、前記第2のアプリケーションリソーステンプレートと、前記第2のアプリケーションリソーステンプレートを前記フレームワークに配置するための第2の配置処理情報との対応、および、前記第3のアプリケーションリソーステンプレートと、前記第3のアプリケーションリソーステンプレートを前記フレームワークに配置するための第3の配置処理情報との対応を規定し、
前記配置手段は、前記配置規則を参照して、前記第1のアプリケーションリソーステンプレートを前記第1の配置処理情報に基づいて前記フレームワークに配置し、前記第2のアプリケーションリソーステンプレートを前記第2の配置処理情報に基づいて当該フレームワークに配置し、前記第3のアプリケーションリソーステンプレートを前記第3の配置処理情報に基づいて当該フレームワークに配置することを特徴とする請求項5記載のソースコード変換装置。 - 前記配置手段は、前記第1の配置処理情報、前記第2の配置処理情報、および、前記第3の配置処理情報の何れかが、前記フレームワークにおける前記第1のアプリケーションリソーステンプレート、前記第2のアプリケーションリソーステンプレート、および、前記第3のアプリケーションリソーステンプレートのうちの対応するアプリケーションリソーステンプレートの配置位置をユーザが指定可能なことを示す場合に、前記配置位置をユーザに指定させることを特徴とする請求項6記載のソースコード変換装置。
- 前記配置規則は、複数のフレームワークの各々に対応して設けられ、
前記配置手段は、前記第1のアプリケーションリソーステンプレートと前記第2のアプリケーションリソーステンプレートと前記第3のアプリケーションリソーステンプレートとを、要求されたフレームワークに対応する前記配置規則に従って配置することを特徴とする請求項5記載のソースコード変換装置。 - コンピュータが、アプリケーションプログラムのソースコードを解析して、画面を定義する画面定義と、遷移元画面、遷移先画面、遷移条件を少なくとも定義する画面遷移定義と、画面遷移を起動するイベントを定義するイベント定義とを含む解析情報を生成するステップと、
コンピュータが、生成された前記解析情報に含まれる前記画面定義を予め記憶装置に記憶された変換規則に従って変換することで、所定のフレームワークにおける第1のアプリケーションリソーステンプレートを生成し、当該解析情報に含まれる前記画面遷移定義を当該変換規則に従って変換することで、当該フレームワークにおける第2のアプリケーションリソーステンプレートを生成し、当該解析情報に含まれる前記イベント定義および前記画面遷移定義で定義された前記遷移先画面を当該変換規則に従って変換することで、当該フレームワークにおける第3のアプリケーションリソーステンプレートを生成するステップと、
コンピュータが、生成された前記第1のアプリケーションリソーステンプレートと前記第2のアプリケーションリソーステンプレートと前記第3のアプリケーションリソーステンプレートとを予め記憶装置に記憶された配置規則に従って前記フレームワークに配置することで、アプリケーションテンプレートを生成するステップと
を含むことを特徴とするソースコード変換方法。 - 前記解析情報を生成するステップでは、前記ソースコードから前記画面定義と前記画面遷移定義と前記イベント定義とを抽出し、当該画面定義と当該画面遷移定義と当該イベント定義とを分離して木構造で表現した中間ソースコードを、前記解析情報として記憶することを特徴とする請求項9記載のソースコード変換方法。
- 前記第1のアプリケーションリソーステンプレートと前記第2のアプリケーションリソーステンプレートと前記第3のアプリケーションリソーステンプレートとを生成するステップでは、
前記画面定義に含まれる第1の変換前の要素または要素集合と前記第1のアプリケーションリソーステンプレートに含まれる第1の変換後の要素とを対応付け、前記画面遷移定義に含まれる第2の変換前の要素または要素集合と前記第2のアプリケーションリソーステンプレートに含まれる第2の変換後の要素とを対応付け、かつ、前記イベント定義に含まれる第3の変換前の要素または要素集合と前記第3のアプリケーションリソーステンプレートに含まれる第3の変換後の要素とを対応付けた前記変換規則を前記記憶装置から読み出し、
前記変換規則において前記第1の変換前の要素または要素集合として規定される前記画面定義内の要素を前記第1の変換後の要素に変換することで、前記画面定義を変換し、前記変換規則において前記第2の変換前の要素または要素集合として規定される前記画面遷移定義内の要素を前記第2の変換後の要素に変換することで、前記画面遷移定義を変換し、前記変換規則において前記第3の変換前の要素または要素集合として規定される前記イベント定義内の要素を前記第3の変換後の要素に変換することで、前記イベント定義を変換することを特徴とする請求項10記載のソースコード変換方法。 - 前記第1のアプリケーションリソーステンプレートと前記第2のアプリケーションリソーステンプレートと前記第3のアプリケーションリソーステンプレートとを生成するステップでは、前記記憶装置に記憶された複数の変換規則のうち、要求されたフレームワークに対応する変換規則を読み出し、前記画面定義と前記画面遷移定義と前記イベント定義とを当該変換規則に従って変換することを特徴とする請求項9記載のソースコード変換方法。
- 前記アプリケーションテンプレートを生成するステップでは、
前記第1のアプリケーションリソーステンプレートと前記第1のアプリケーションリソーステンプレートを前記フレームワークに配置するための第1の配置処理情報とを対応付け、前記第2のアプリケーションリソーステンプレートと前記第2のアプリケーションリソーステンプレートを前記フレームワークに配置するための第2の配置処理情報とを対応付け、かつ、前記第3のアプリケーションリソーステンプレートと前記第3のアプリケーションリソーステンプレートを前記フレームワークに配置するための第3の配置処理情報とを対応付けた前記配置規則を前記記憶装置から読み出し、
前記第1のアプリケーションリソーステンプレートを前記第1の配置処理情報に基づいて前記フレームワークに配置し、前記第2のアプリケーションリソーステンプレートを前記第2の配置処理情報に基づいて前記フレームワークに配置し、前記第3のアプリケーションリソーステンプレートを前記第3の配置処理情報に基づいて前記フレームワークに配置することを特徴とする請求項9記載のソースコード変換方法。 - 前記アプリケーションテンプレートを生成するステップでは、前記記憶装置に記憶された複数の配置規則のうち、要求されたフレームワークに対応する配置規則を読み出し、前記第1のアプリケーションリソーステンプレートと前記第2のアプリケーションリソーステンプレートと前記第3のアプリケーションリソーステンプレートとを当該配置規則に従って配置することを特徴とする請求項9記載のソースコード変換方法。
- コンピュータに、
アプリケーションプログラムのソースコードを解析して、画面を定義する画面定義と、遷移元画面、遷移先画面、遷移条件を少なくとも定義する画面遷移定義と、画面遷移を起動するイベントを定義するイベント定義とを含む解析情報を生成する機能と、
生成された前記解析情報に含まれる前記画面定義を予め記憶装置に記憶された変換規則に従って変換することで、所定のフレームワークにおける第1のアプリケーションリソーステンプレートを生成し、当該解析情報に含まれる前記画面遷移定義を当該変換規則に従って変換することで、当該フレームワークにおける第2のアプリケーションリソーステンプレートを生成し、当該解析情報に含まれる前記イベント定義および前記画面遷移定義で定義された前記遷移先画面を当該変換規則に従って変換することで、当該フレームワークにおける第3のアプリケーションリソーステンプレートを生成する機能と、
生成された前記第1のアプリケーションリソーステンプレートと前記第2のアプリケーションリソーステンプレートと前記第3のアプリケーションリソーステンプレートとを予め記憶装置に記憶された配置規則に従って前記フレームワークに配置することで、アプリケーションテンプレートを生成する機能と
を実現させるためのプログラム。 - 前記解析情報を生成する機能では、前記ソースコードから前記画面定義と前記画面遷移定義と前記イベント定義とを抽出し、当該画面定義と当該画面遷移定義と当該イベント定義とを分離して木構造で表現した中間ソースコードを、前記解析情報として記憶する機能を更に実現させることを特徴とする請求項15記載のプログラム。
- 前記第1のアプリケーションリソーステンプレートと前記第2のアプリケーションリソーステンプレートと前記第3のアプリケーションリソーステンプレートとを生成する機能では、前記記憶装置に記憶された複数の変換規則のうち、要求されたフレームワークに対応する変換規則を読み出し、前記画面定義と前記画面遷移定義と前記イベント定義とを当該変換規則に従って変換する機能を更に実現させることを特徴とする請求項15記載のプログラム。
- 前記アプリケーションテンプレートを生成する機能では、前記記憶装置に記憶された複数の配置規則のうち、要求されたフレームワークに対応する配置規則を読み出し、前記第1のアプリケーションリソーステンプレートと前記第2のアプリケーションリソーステンプレートと前記第3のアプリケーションリソーステンプレートとを当該配置規則に従って配置する機能を更に実現させることを特徴とする請求項15記載のプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003161029A JP4686117B2 (ja) | 2003-06-05 | 2003-06-05 | ソースコード変換装置、ソースコード変換方法、およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003161029A JP4686117B2 (ja) | 2003-06-05 | 2003-06-05 | ソースコード変換装置、ソースコード変換方法、およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004362343A JP2004362343A (ja) | 2004-12-24 |
JP4686117B2 true JP4686117B2 (ja) | 2011-05-18 |
Family
ID=34053632
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003161029A Expired - Fee Related JP4686117B2 (ja) | 2003-06-05 | 2003-06-05 | ソースコード変換装置、ソースコード変換方法、およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4686117B2 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5399601B2 (ja) | 2005-05-31 | 2014-01-29 | 日本電気株式会社 | 実装コード開発システム、及び実装コード開発プログラム |
JP2007087127A (ja) * | 2005-09-22 | 2007-04-05 | Open Stream Inc | データ生成プログラム、該プログラムを記憶した記憶媒体、オープンソースソフトウェア開発環境統合プログラム、該プログラムを記憶した記憶媒体 |
JP5593960B2 (ja) * | 2010-08-25 | 2014-09-24 | 株式会社リコー | 業務管理システム、業務管理サーバ及び業務管理プログラム |
JP6123344B2 (ja) * | 2013-02-21 | 2017-05-10 | 日本電気株式会社 | 画面プログラム生成装置及びその画面プログラム生成方法、情報処理装置、並びにコンピュータ・プログラム |
JP5405684B1 (ja) * | 2013-03-28 | 2014-02-05 | 株式会社バリュー | ソースプログラムのプログラミング言語変換装置 |
JP6111150B2 (ja) * | 2013-06-19 | 2017-04-05 | 株式会社エヌ・ティ・ティ・データ | ソースコード解析装置、ソースコード解析方法、及びプログラム |
JP7148804B2 (ja) * | 2019-02-15 | 2022-10-06 | 富士通株式会社 | ソースファイル生成プログラム、ソースファイル生成方法、および情報処理装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002150377A (ja) * | 2000-11-10 | 2002-05-24 | Japan Tobacco Inc | 自動販売機 |
JP2002182915A (ja) * | 2000-12-19 | 2002-06-28 | Tokio Marine & Fire Insurance Co Ltd | ソース・プログラム保管方法及びシステム、ソース・プログラム復元方法及びシステム、並びにコンパイル方法及び装置 |
JP2002366352A (ja) * | 2001-06-11 | 2002-12-20 | It Forest Corp | Webアプリケーション開発支援装置 |
JP2003076543A (ja) * | 2001-08-31 | 2003-03-14 | Cats Kk | プログラム生成装置、プログラム生成方法およびその方法をコンピュータに実行させるプログラム |
JP2003150377A (ja) * | 2001-11-16 | 2003-05-23 | Nec Corp | 画面出力モジュール開発システム、画面出力モジュール開発方法及びプログラム並びに記録媒体 |
JP2004038297A (ja) * | 2002-06-28 | 2004-02-05 | Jcreation Co Ltd | プログラム書式変換装置および変換プログラム |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05134853A (ja) * | 1991-11-12 | 1993-06-01 | Shikoku Nippon Denki Software Kk | プログラムソース言語変換装置 |
-
2003
- 2003-06-05 JP JP2003161029A patent/JP4686117B2/ja not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002150377A (ja) * | 2000-11-10 | 2002-05-24 | Japan Tobacco Inc | 自動販売機 |
JP2002182915A (ja) * | 2000-12-19 | 2002-06-28 | Tokio Marine & Fire Insurance Co Ltd | ソース・プログラム保管方法及びシステム、ソース・プログラム復元方法及びシステム、並びにコンパイル方法及び装置 |
JP2002366352A (ja) * | 2001-06-11 | 2002-12-20 | It Forest Corp | Webアプリケーション開発支援装置 |
JP2003076543A (ja) * | 2001-08-31 | 2003-03-14 | Cats Kk | プログラム生成装置、プログラム生成方法およびその方法をコンピュータに実行させるプログラム |
JP2003150377A (ja) * | 2001-11-16 | 2003-05-23 | Nec Corp | 画面出力モジュール開発システム、画面出力モジュール開発方法及びプログラム並びに記録媒体 |
JP2004038297A (ja) * | 2002-06-28 | 2004-02-05 | Jcreation Co Ltd | プログラム書式変換装置および変換プログラム |
Also Published As
Publication number | Publication date |
---|---|
JP2004362343A (ja) | 2004-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100661393B1 (ko) | 웹 프로그래밍 환경을 응용한 웹사이트 관리 시스템 및방법 | |
US7653896B2 (en) | Smart UI recording and playback framework | |
EP2151773B1 (en) | Synchronous to asynchronous web page conversion | |
EP1139216A2 (en) | Web application development system | |
CN108762743B (zh) | 一种数据表操作代码生成方法及装置 | |
JPWO2006137565A1 (ja) | 文書処理装置及び文書処理方法 | |
CN104798067B (zh) | 辞典***以及辞典调用方法 | |
US20020066074A1 (en) | Method and system for developing and executing software applications at an abstract design level | |
KR101552914B1 (ko) | 웹 서버 어플리케이션 프레임워크 장치와 프레임워크를 이용한 웹 어플리케이션 처리 방법 및 이를 구현할 수 있는 컴퓨터로 읽을 수 있는 기록 매체 | |
US20070208995A1 (en) | Document Processing Device and Document Processing Method | |
JPWO2007081017A1 (ja) | 文書処理装置 | |
JP4686117B2 (ja) | ソースコード変換装置、ソースコード変換方法、およびプログラム | |
CN113342399B (zh) | 应用项目的结构配置方法、装置及可读存储介质 | |
CN113296759A (zh) | 用户界面处理方法、用户界面处理***、设备及存储介质 | |
JP2001273125A (ja) | ソースプログラム自動生成方法およびシステム、ならびにそのプログラム記録媒体 | |
JP2006236375A (ja) | Webアプリケーション開発方法、開発支援システム、および該方法に係るプログラム | |
Korva | Developing a web application with Angular 2: Graphical editor for Happywise’s Cove Trainer | |
JP2007094453A (ja) | プログラム開発支援システム、プログラム開発支援方法およびプログラム | |
JP2010009145A (ja) | ウェブページ生成システム及びウェブページ生成プログラム | |
Trivedi | User interface implementation of environmental data integration system with React | |
JP4895374B2 (ja) | ソフトウェア成果物生成方法及びそのシステム | |
Fraze-Frazenko et al. | Panorama tours management application development | |
CN116974525A (zh) | 网页生成方法、装置、电子设备及存储介质 | |
JP2004227319A (ja) | ソフトウェアコード生成装置、ソフトウェアコード生成方法および記録媒体並びにプログラム | |
WO2017141785A1 (ja) | 設計書の入出力装置、設計書の入出力システム及び設計書の入出力方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060517 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090721 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090924 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100727 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101020 |
|
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: 20110208 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20110208 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110214 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140218 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |