JP4672754B2 - Program / design document generation apparatus and program / design document generation program - Google Patents

Program / design document generation apparatus and program / design document generation program Download PDF

Info

Publication number
JP4672754B2
JP4672754B2 JP2008148391A JP2008148391A JP4672754B2 JP 4672754 B2 JP4672754 B2 JP 4672754B2 JP 2008148391 A JP2008148391 A JP 2008148391A JP 2008148391 A JP2008148391 A JP 2008148391A JP 4672754 B2 JP4672754 B2 JP 4672754B2
Authority
JP
Japan
Prior art keywords
program
information
file
definition information
design document
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.)
Active
Application number
JP2008148391A
Other languages
Japanese (ja)
Other versions
JP2009294940A (en
Inventor
大輔 今村
真由美 上野
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.)
Toshiba Corp
Toshiba Digital Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Solutions 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 Toshiba Corp, Toshiba Solutions Corp filed Critical Toshiba Corp
Priority to JP2008148391A priority Critical patent/JP4672754B2/en
Priority to CN2009101426496A priority patent/CN101599014B/en
Publication of JP2009294940A publication Critical patent/JP2009294940A/en
Application granted granted Critical
Publication of JP4672754B2 publication Critical patent/JP4672754B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、プログラムやその設計書を生成するためのプログラム・設計書の生成装置及びプログラム・設計書の生成プログラムに関する。   The present invention relates to a program / design document generation apparatus and a program / design document generation program for generating a program and its design document.

一般に、プログラムやその設計書を生成するアプリケーション開発の分野においては、開発者の負担を軽減させる観点から、例えば、プログラムを生成するためのプログラム生成装置が提案されている(例えば、特許文献1,2参照)。   In general, in the field of application development for generating a program and its design document, for example, a program generation device for generating a program has been proposed from the viewpoint of reducing the burden on the developer (for example, Patent Document 1, Patent Document 1). 2).

特許文献1には、業務仕様記述部と物理仕様記述部により構成され、詳細な物理仕様を入力することにより、動作するプログラムを生成する技術が開示されている。また、特許文献1には、物理仕様の入力がない段階では「画面プログラム」のみを生成し、表示画面を確認した後、物理仕様を入力する技術が開示されている。   Patent Document 1 discloses a technology that includes a business specification description part and a physical specification description part, and generates an operating program by inputting detailed physical specifications. Patent Document 1 discloses a technique of generating only a “screen program” at a stage where no physical specification is input, and inputting the physical specification after confirming the display screen.

一方、特許文献2には、設計情報記憶手段から業務用語を取得し、業務用語記憶手段を参照して業務用語に対応する識別子を抽出し、それらをテンプレート記憶手段に保持したテンプレートに埋め込むことで特定業務のプログラムを生成する技術が開示されている。
特開2004−318260号公報(第10段落、図8−図11、図46、第283−286段落、第292段落) 特開2005−228235号公報(第24段落、図1)
On the other hand, in Patent Document 2, business terms are acquired from design information storage means, identifiers corresponding to business terms are extracted with reference to the business term storage means, and these are embedded in a template held in the template storage means. A technique for generating a program for a specific business is disclosed.
JP-A-2004-318260 (10th paragraph, FIGS. 8-11, 46, 283-286, 292) JP 2005-228235 A (24th paragraph, FIG. 1)

しかしながら、特許文献1,2に開示された技術は、通常は特に問題無いが、本発明者の検討によれば、以下の点で改善の余地がある。   However, the techniques disclosed in Patent Documents 1 and 2 are usually not particularly problematic, but according to the study of the present inventors, there is room for improvement in the following points.

特許文献1に開示された技術は、画面確認の有無のいずれにしても最終的には、詳細な物理仕様を入力する必要があるため、アプリケーション開発の生産性低下につながり易い点で改善の余地がある。   The technique disclosed in Patent Document 1 needs to input detailed physical specifications in the end regardless of whether or not the screen is confirmed. Therefore, there is room for improvement in that it tends to reduce productivity of application development. There is.

特許文献2に開示された技術は、一組のテンプレートを用いて特定業務のプログラムを生成できる反面、複数組のテンプレートを使い分けることができず、生成したいプログラムの仕様を柔軟に変更・追加できない点で改善の余地がある。   Although the technology disclosed in Patent Document 2 can generate a program for a specific business using a set of templates, it cannot use a plurality of sets of templates properly, and the specification of a program to be generated cannot be flexibly changed or added. There is room for improvement.

また、特許文献1,2に開示された技術は、プログラムを生成できるものの、そのプログラムの設計書を生成できない点で改善の余地がある。   Further, although the techniques disclosed in Patent Documents 1 and 2 can generate a program, there is room for improvement in that a design document for the program cannot be generated.

本発明は上記実情を考慮してなされたもので、プログラム及び設計書を生成でき、生成対象の仕様を柔軟に設定でき、アプリケーション開発の生産性を向上し得るプログラム・設計書の生成装置及びプログラム・設計書の生成プログラムを提供することを目的とする。   The present invention has been made in consideration of the above circumstances, and can generate a program and a design document, can flexibly set a generation target specification, and can improve the productivity of application development and a program / design document generation apparatus and program・ The purpose is to provide a design document generation program.

本発明の一つの局面によれば、アプリケーションプログラムを構成する複数のプログラムと、前記各プログラムの設計書とをそれぞれ生成するためのプログラム・設計書の生成装置であって、テーブル毎に、前記アプリケーションプログラムを示すプログラムID、前記アプリケーションプログラムのパッケージ名及び前記テーブルを示すテーブルIDを含んでプログラム生成先を示す第1ルートディレクトリ値を定義し、且つ、前記アプリケーションプログラム毎に、前記プログラムIDを含んでプログラム生成先を示す第2ルートディレクトリ値を定義したルートディレクトリ定義情報と、テーブル毎に、生成される各プログラムに対応する第1テンプレート特定キーを定義し、且つ前記アプリケーションプログラムのパターン特定情報毎に、生成される各プログラムに対応する第2テンプレート特定キーを定義した抽象テンプレートファイル定義情報と、前記テンプレート特定キー毎に、各プログラム及び設計書の具象テンプレートファイルを定義した具象テンプレートファイル定義情報と、前記テンプレート特定キー毎に、テーブルIDを含んでプログラム生成先の相対パスを定義した相対パス定義情報と、を含むメタモデル情報が記憶されたメタモデル記憶手段と、前記具象テンプレートファイル定義情報により定義された具象テンプレートファイルが記憶されたテンプレート記憶手段と、プログラムID、パッケージ名、パターン特定情報、テーブルID、を含む設計情報を入力するための設計情報入力手段と、前記設計情報を、前記各プログラムの具体的な仕様に依らない抽象的な形式のモデル情報に変換して出力するモデル情報出力手段と、前記モデル情報内のテーブルIDと、前記相対パス定義情報と、前記設計書の具象テンプレートとに基づいて、前記相対パス定義情報に当該テーブルIDを組み合わせたファイル名を一覧して示す一覧表を含む設計書を生成し、この設計書を前記設計書記憶手段に書き込む設計書生成手段と、前記モデル情報内のテーブルID及びパターン特定情報と、前記メタモデル情報内の抽象テンプレートファイル定義情報及び具象テンプレートファイル定義情報とに基づいて、前記テンプレート記憶手段内の具象テンプレートファイルを決定する手段と、前記モデル情報内のテーブルID及び前記相対パス定義情報に基づいて各プログラムのファイル名を生成し、当該ファイル名を前記決定した具象テンプレートファイルのファイル名とすることにより各プログラムを生成し、当該各プログラムを、前記ルートディレクトリ定義情報及び前記相対パス定義情報に基づいて前記プログラム記憶手段に書き込むプログラム生成手段と、を備えたプログラム・設計書の生成装置である。   According to one aspect of the present invention, there is provided a program / design document generating apparatus for generating a plurality of programs constituting an application program and a design document for each program, wherein the application is provided for each table. A first root directory value indicating a program generation destination is defined including a program ID indicating a program, a package name of the application program, and a table ID indicating the table, and the program ID is included for each application program. Root directory definition information defining a second root directory value indicating a program generation destination, a first template specifying key corresponding to each generated program for each table, and pattern specifying information of the application program In addition, abstract template file definition information defining a second template specific key corresponding to each program to be generated, concrete template file definition information defining a concrete template file of each program and design document for each template specific key, and Meta model storage means storing meta model information including a relative path definition information including a table ID and defining a relative path of a program generation destination for each template specifying key, and the concrete template file definition information. A template storage unit storing a defined concrete template file, a design information input unit for inputting design information including a program ID, a package name, pattern specifying information, and a table ID; Depends on specific program specifications Model information output means for converting into model information in a non-abstract format and outputting, based on the table ID in the model information, the relative path definition information, and the concrete template of the design document, the relative path A design document generating unit that generates a design document including a list showing a list of file names in which the table ID is combined with the definition information, and writing the design document in the design document storage unit; and a table ID in the model information And means for determining a concrete template file in the template storage means based on the pattern specifying information, the abstract template file definition information and the concrete template file definition information in the meta model information, and a table ID in the model information And generate a file name for each program based on the relative path definition information, and Program generation means for generating each program by using a file name as the file name of the determined concrete template file, and writing each program in the program storage means based on the root directory definition information and the relative path definition information And a program / design document generator.

なお、本発明の一つの局面としては、装置として表現したが、これに限らず、方法、プログラム、プログラムを記憶したコンピュータ読取り可能な記憶媒体、といった他のカテゴリーで表現してもよい。   Although one aspect of the present invention is expressed as an apparatus, the present invention is not limited to this and may be expressed in other categories such as a method, a program, and a computer-readable storage medium storing the program.

(作用)
本発明の一つの局面によれば、プログラムID、パッケージ名、パターン特定情報、テーブルID、を含む設計情報を入力すると、設計情報を、各プログラムの具体的な仕様に依らない抽象的な形式のモデル情報に変換して出力し、このモデル情報内のテーブルIDと、相対パス定義情報と、設計書の具象テンプレートとに基づいて、相対パス定義情報に当該テーブルIDを組み合わせたファイル名を一覧して示す一覧表を含む設計書を生成し、この設計書を設計書記憶手段に書き込むと共に、モデル情報内のテーブルID及びパターン特定情報と、メタモデル情報内の抽象テンプレートファイル定義情報及び具象テンプレートファイル定義情報とに基づいて、テンプレート記憶手段内の具象テンプレートファイルを決定する手段と、モデル情報内のテーブルID及び相対パス定義情報に基づいて各プログラムのファイル名を生成し、当該ファイル名を、決定した具象テンプレートファイルのファイル名とすることにより各プログラムを生成し、当該各プログラムを、ルートディレクトリ定義情報及び相対パス定義情報に基づいてプログラム記憶手段に書き込む。
(Function)
According to one aspect of the present invention, when design information including a program ID, a package name, pattern specifying information, and a table ID is input, the design information is in an abstract format that does not depend on the specific specifications of each program. Based on the table ID in this model information, the relative path definition information, and the concrete template of the design document, the file name that combines the table ID with the relative path definition information is listed. A design document including a list shown in the table is generated, and the design document is written in the design document storage means, and the table ID and pattern specifying information in the model information, the abstract template file definition information in the meta model information, and the concrete template file Means for determining a concrete template file in the template storage means based on the definition information, and a model A file name of each program is generated based on the table ID and relative path definition information in the report, and each program is generated by setting the file name as the file name of the determined concrete template file. Based on the root directory definition information and the relative path definition information, it is written in the program storage means.

従って、本発明の一つの局面においては、従来とは異なり、詳細な物理仕様を入力せずにプログラム及び設計書を生成できるので、アプリケーション開発の生産性を向上でき、また、パターン特定情報に基づいて具象テンプレートファイルを決定するので、従来とは異なり、生成対象の仕様を柔軟に設定することができる。   Therefore, in one aspect of the present invention, unlike conventional systems, it is possible to generate a program and a design document without inputting detailed physical specifications, so that it is possible to improve the productivity of application development, and based on pattern specifying information. Since the concrete template file is determined, the specification to be generated can be flexibly set unlike the conventional case.

以上説明したように本発明によれば、プログラム及び設計書を生成でき、生成対象の仕様を柔軟に設定でき、アプリケーション開発の生産性を向上できる。   As described above, according to the present invention, it is possible to generate a program and a design document, flexibly set a generation target specification, and improve application development productivity.

以下、本発明の実施形態について図面を用いて説明する。なお、以下の実施形態では、Java(登録商標)プログラムを例に挙げて述べるが、これに限らず、任意のプログラムを生成可能となっている。また、以下のプログラム・設計書の生成装置は、ハードウェア構成、又はハードウェア資源とソフトウェアとの組合せ構成のいずれでも実施可能となっている。組合せ構成のソフトウェアとしては、予めネットワーク又は記憶媒体からインストールされ、プログラム・設計書の生成装置の機能を実現させるためのプログラムが用いられる。   Hereinafter, embodiments of the present invention will be described with reference to the drawings. In the following embodiments, a Java (registered trademark) program is described as an example, but the present invention is not limited to this, and an arbitrary program can be generated. Further, the following program / design document generation apparatus can be implemented with either a hardware configuration or a combined configuration of hardware resources and software. As the software of the combined configuration, a program that is installed in advance from a network or a storage medium and that realizes the function of the program / design document generation apparatus is used.

(第1の実施形態)
図1は本発明の第1の実施形態に係るプログラム・設計書の生成装置及びその周辺構成を示す模式図である。このプログラム・設計書の生成装置100は、利用者端末200及びデータベース装置300にネットワーク400を介して通信可能となっている。
(First embodiment)
FIG. 1 is a schematic diagram showing a program / design document generation apparatus and its peripheral configuration according to the first embodiment of the present invention. The program / design document generation apparatus 100 can communicate with the user terminal 200 and the database apparatus 300 via the network 400.

ここで、プログラム・設計者の生成装置100は、メタモデル記憶部101、テンプレート記憶部102、ライブラリ記憶部103、モデル情報記憶部104、設計書記憶部105、プログラム記憶部106、全体制御部107、設計情報入力部108、検証部109、モデル情報出力部110、設計書生成部111及びプログラム生成部112を備えている。   Here, the program / designer generation apparatus 100 includes a meta model storage unit 101, a template storage unit 102, a library storage unit 103, a model information storage unit 104, a design document storage unit 105, a program storage unit 106, and an overall control unit 107. A design information input unit 108, a verification unit 109, a model information output unit 110, a design document generation unit 111, and a program generation unit 112.

ここで、メタモデル記憶部101は、全体制御部107から読出/書込可能でプログラム生成部112から読出可能な記憶装置であり、ルートディレクトリ定義情報101a、抽象テンプレートファイル定義情報101b、具象テンプレートファイル定義情報101c、相対パス定義情報101d、コピー対象ファイル定義情報101e、コピー元ファイル定義情報101f及びコピー先ファイル定義情報101g、としてのメタモデル情報が予め書き込まれている。なお、各定義情報101a〜101gを用いた生成処理は、後述するパターン特定情報d7により選択されないパターンの場合を除き、基本的には図2〜図11に示す各行毎に順次実行されるので、わずかな設計情報に対し、大量の成果物(プログラム及び設計書)を生成可能となっている。   Here, the metamodel storage unit 101 is a storage device that can be read / written from the overall control unit 107 and readable from the program generation unit 112, and includes root directory definition information 101a, abstract template file definition information 101b, concrete template file. Metamodel information is written in advance as definition information 101c, relative path definition information 101d, copy target file definition information 101e, copy source file definition information 101f, and copy destination file definition information 101g. The generation process using the definition information 101a to 101g is basically executed sequentially for each row shown in FIGS. 2 to 11 except for a pattern not selected by the pattern specifying information d7 described later. A large amount of deliverables (programs and design documents) can be generated for a small amount of design information.

ルートディレクトリ定義情報101aは、図2及び図3に示すように、テーブル毎に、アプリケーションプログラムを示すプログラムID、アプリケーションプログラムのパッケージ名及びテーブルを示すテーブルIDを含んでプログラム生成先を示す第1ルートディレクトリ値と、アプリケーションプログラム毎に、プログラムIDを含んでプログラム生成先を示す第2ルートディレクトリ値と、コピー対象ファイルの種類毎に、コピー先を示す第3ルートディレクトリ値とを定義した情報である。   As shown in FIGS. 2 and 3, the root directory definition information 101a includes a program ID indicating an application program, a package name of the application program, and a table ID indicating a table for each table. Information defining a directory value, a second root directory value indicating a program generation destination including a program ID for each application program, and a third root directory value indicating a copy destination for each type of file to be copied. .

抽象テンプレートファイル定義情報101bは、図4〜図6に示すように、テーブル毎に、生成される各プログラムに対応する第1テンプレート特定キーを定義し、且つ前記アプリケーションプログラムのパターン特定情報毎に、生成される各プログラムに対応する第2テンプレート特定キーを定義した情報である。   As shown in FIGS. 4 to 6, the abstract template file definition information 101b defines, for each table, a first template specifying key corresponding to each generated program, and for each pattern specifying information of the application program, This is information defining a second template specific key corresponding to each program to be generated.

具象テンプレートファイル定義情報101cは、図7に示すように、テンプレート特定キー毎に、各プログラム及び設計書の具象テンプレートファイルを定義した情報である。   As shown in FIG. 7, the concrete template file definition information 101c is information that defines a concrete template file for each program and design document for each template identification key.

相対パス定義情報101dは、図8に示すように、テンプレート特定キー毎に、テーブルIDを含んでプログラム生成先の相対パスを定義した情報である。   As shown in FIG. 8, the relative path definition information 101d is information that defines the relative path of the program generation destination including the table ID for each template specifying key.

コピー対象ファイル定義情報101eは、図9に示すように、コピー対象ファイルの種類毎に、コピー元ファイル名を定義した情報である。   As shown in FIG. 9, the copy target file definition information 101e is information that defines a copy source file name for each type of copy target file.

コピー元ファイル定義情報101fは、図10に示すように、コピー元ファイル名毎に、コピー元ファイルの格納位置を定義した情報である。   As shown in FIG. 10, the copy source file definition information 101f is information that defines the storage location of the copy source file for each copy source file name.

コピー先ファイル定義情報101gは、図11に示すように、コピー元ファイル名毎に、コピー先ファイル名を定義した情報である。   As shown in FIG. 11, the copy destination file definition information 101g is information that defines a copy destination file name for each copy source file name.

テンプレート記憶部102は、全体制御部107から読出/書込可能で設計書生成部111及びプログラム生成部112から読出可能な記憶装置であり、具象テンプレートファイル定義情報により定義された具象テンプレートファイルが予め書き込まれている。ここで、具象テンプレートファイルは、アプリケーションプログラムのパターン特定情報に対応した、プログラムの種類(ステレオタイプ)毎のプログラムテンプレートファイル102a,102c及び設計書の種類毎の設計書テンプレートファイル102b,102dと、共通のプログラムテンプレートファイル102e及び設計書テンプレートファイル102fからなる。   The template storage unit 102 is a storage device that can be read / written from the overall control unit 107 and can be read from the design document generation unit 111 and the program generation unit 112. A concrete template file defined by the concrete template file definition information is stored in advance. Has been written. Here, the concrete template file is common to the program template files 102a and 102c for each type of program (stereotype) and the design template files 102b and 102d for each type of design corresponding to the pattern specifying information of the application program. Program template file 102e and design document template file 102f.

ライブラリ記憶部103は、全体制御部107から読出/書込可能でプログラム生成部112から読出可能な記憶装置であり、利用ライブラリ103aが予め書き込まれている。ここで、利用ライブラリ103aは、生成されたプログラムが、コンパイル時と実行時に参照する既存のライブラリである。アプリケーションの構造を所定のステレオタイプに規定するためのフレームワークのライブラリや、ログなどの汎用的な処理のコンポーネントのライブラリである。総じて、生成されるプログラムのソースコードの冗長性を少なくするものである。   The library storage unit 103 is a storage device that can be read / written from the overall control unit 107 and can be read from the program generation unit 112, and a use library 103a is written in advance. Here, the use library 103a is an existing library that the generated program refers to at the time of compilation and execution. It is a library of a framework for defining the structure of an application to a predetermined stereotype, and a library of general-purpose processing components such as logs. In general, the redundancy of the source code of the generated program is reduced.

モデル情報記憶部104は、全体制御部107及びモデル情報出力部110から読出/書込可能で設計書生成部111及びプログラム生成部112から読出可能な記憶装置であり、モデル情報出力部110から出力されたモデル情報104aが記憶される。モデル情報104aは、図12及び図13に示すように、生成する各プログラムの具体的な仕様に依らない抽象的な形式で設計情報を表現したデータである。モデル情報104aの形式としては、例えばXML(Extensible Markup Language)形式が使用可能となっている。このモデル情報104aは、中間形態として、設計書生成とプログラム生成に利用される。   The model information storage unit 104 is a storage device that can be read / written from the overall control unit 107 and the model information output unit 110 and can be read from the design document generation unit 111 and the program generation unit 112, and is output from the model information output unit 110. The model information 104a is stored. As shown in FIGS. 12 and 13, the model information 104a is data representing design information in an abstract format that does not depend on the specific specification of each program to be generated. As the format of the model information 104a, for example, an XML (Extensible Markup Language) format can be used. The model information 104a is used as an intermediate form for design document generation and program generation.

設計書記憶部105は、全体制御部107及び設計書生成部111から読出/書込可能な記憶装置であり、設計書生成部111により生成された設計書105aが記憶される。設計書105aは、設計書生成部111によって生成される設計書であり、プログラム106aの設計書である。設計書には、例えば、(a)画面一覧表、(b)画面項目定義表、(c)テーブル一覧表、(d)テーブル項目定義表、(e)クラス(またはプログラム)の静的情報を表す一覧表、もしくはダイアグラム、(f)クラスの相互作用を表す一覧表、もしくはダイアグラム、の種類がある。   The design document storage unit 105 is a storage device that can be read / written from the overall control unit 107 and the design document generation unit 111, and stores the design document 105a generated by the design document generation unit 111. The design document 105a is a design document generated by the design document generation unit 111, and is a design document of the program 106a. In the design document, for example, (a) screen list, (b) screen item definition table, (c) table list, (d) table item definition table, (e) class (or program) static information There are types of lists or diagrams that represent, and (f) lists or diagrams that represent class interactions.

プログラム記憶部106は、全体制御部107及びプログラム生成部112から読出/書込可能な記憶装置であり、プログラム生成部112により生成された各プログラム106aが記憶される。プログラム106aは、プログラム生成部112によって生成されるプログラムである。生成されたプログラム106aは適切なテスト動作環境下に保存するだけで、利用者が一切追加の実装を行わなくても動作可能となっている。   The program storage unit 106 is a storage device that can be read / written from the overall control unit 107 and the program generation unit 112, and stores each program 106 a generated by the program generation unit 112. The program 106a is a program generated by the program generation unit 112. The generated program 106a is stored in an appropriate test operation environment, and can be operated without any additional installation by the user.

全体制御部107は、後述する図19〜図21に示す動作を実行するように、各部108〜112を制御する機能をもっている。例えば、全体制御部107は、対し、設計情報の検証とモデル情報の出力を設計情報入力部108に指示し、設計書の生成を設計書生成部111に指示し、プログラムの生成をプログラム生成部112に指示する機能をもっている。   The overall control unit 107 has a function of controlling the units 108 to 112 so as to execute the operations shown in FIGS. For example, the overall control unit 107 instructs the design information input unit 108 to verify design information and output model information, instructs the design document generation unit 111 to generate a design document, and generates a program. 112 is instructed.

設計情報入力部108は、利用者端末200から設計情報を入力するためのユーザインタフェースを利用端末200に提供し、利用者端末200から入力された設計情報を一時的に記憶する機能と、設計情報及び検証指示を検証部109に送出する機能と、検証部109から受けた検証結果がエラー無し(検証成功)のとき、設計情報をモデル情報出力部111に送出する機能とをもっている。   The design information input unit 108 provides the user terminal 200 with a user interface for inputting design information from the user terminal 200, temporarily stores the design information input from the user terminal 200, and the design information. And a function for sending a verification instruction to the verification unit 109 and a function for sending design information to the model information output unit 111 when the verification result received from the verification unit 109 is error-free (verification is successful).

設計情報は、図14に仕様の一例を示すように、プログラムの生成先ディレクトリd1、ログファイル用ディレクトリd2、プログラムIDd3、プログラム名称d4、パッケージ名d5、データベース接続情報d6、アプリケーションプログラムのパターン特定情報d7、オプションのキーと値d8、テーブルIDd9、テーブル名d10、カラムIDd11、カラム名称d12、カラムの型d13、カラムの桁数・位取り数d14、FK属性d15、NotNull属性d16、画面表示属性d17といった項目毎に入力される。ここで、任意の情報d1,d2,d4や名称に関する情報d3,d5を除いた実質的な設計情報は、データベース接続情報d6、テーブル設計情報d9〜d17、及び生成されるアプリケーションのパターンに応じた少数のパラメータ情報d7,d8のみである。すなわち、設計情報は、従来とは異なり、物理仕様を含んでいない。なお、設計情報は、仕様情報と読み替えてもよい。   As shown in FIG. 14, the design information includes a program generation destination directory d1, a log file directory d2, a program ID d3, a program name d4, a package name d5, database connection information d6, and application program pattern specifying information. d7, optional key and value d8, table ID d9, table name d10, column ID d11, column name d12, column type d13, column digit number / scale number d14, FK attribute d15, NotNull attribute d16, screen display attribute d17, etc. Input for each item. Here, substantial design information excluding arbitrary information d1, d2, d4 and name information d3, d5 corresponds to the database connection information d6, the table design information d9 to d17, and the pattern of the generated application. Only a small number of parameter information d7 and d8. That is, the design information does not include physical specifications, unlike the conventional design information. The design information may be read as specification information.

設計情報を入力するためのユーザインタフェースとしては、例えば、図15〜図18に示すように、ツール情報入力画面G10、アプリケーション情報入力画面G20、アプリケーションパターン情報入力画面G30、テーブル情報入力画面G40、を利用者端末200に表示させるための画面データを備えている。但し、各画面による設計情報の入力(ユーザインタフェースの提供)は、必須ではなく省略してもよい。設計情報入力部108は、利用者端末200から設計情報が入力されればよいので、例えば、設計情報が記述されたExcel(登録商標)などのファイルを利用者端末200から受信する構成に変形してもよい。   Examples of user interfaces for inputting design information include a tool information input screen G10, an application information input screen G20, an application pattern information input screen G30, and a table information input screen G40, as shown in FIGS. Screen data to be displayed on the user terminal 200 is provided. However, design information input (providing a user interface) on each screen is not essential and may be omitted. The design information input unit 108 only needs to input design information from the user terminal 200. For example, the design information input unit 108 is modified to receive a file such as Excel (registered trademark) in which the design information is described from the user terminal 200. May be.

検証部109は、設計情報入力部108から受けた設計情報に対し、図14に示した必須又は任意の設定に基づいて、入力の不足や矛盾がないかを検証する機能と、検証結果を設計情報入力部108に送出する機能とをもっている。   The verification unit 109 designs the design information received from the design information input unit 108 and verifies whether there is an input shortage or contradiction based on the required or optional settings shown in FIG. And a function for sending to the information input unit 108.

モデル情報出力部110は、設計情報入力部108から受けた設計情報を、各プログラムの具体的な仕様に依らない抽象的な形式のモデル情報104aに変換して出力し、当該モデル情報104aをモデル情報記憶部104に書き込む機能をもっている。   The model information output unit 110 converts the design information received from the design information input unit 108 into abstract model information 104a that does not depend on the specific specifications of each program, and outputs the model information 104a. The information storage unit 104 has a function of writing.

設計書生成部111は、モデル情報記憶部104a内のモデル情報104a内のテーブルIDd9と、メタモデル情報記憶部101内の相対パス定義情報101dと、テンプレート記憶部102内の設計書の具象テンプレートとに基づいて、相対パス定義情報101dに当該テーブルIDd9を組み合わせたファイル名を一覧して示す一覧表を含む設計書105aを生成する機能と、この設計書105aを設計書記憶部105に書き込む機能とをもっている。補足すると、設計書生成部111は、モデル情報104aに含まれるパターン特定情報d7とメタモデル記憶部101のデータから、テンプレート記憶部102内の設計書テンプレートのうち適切なテンプレートを決定し、このテンプレートにモデル情報104aを作用させて設計書105aを生成する。すなわち、設計書生成部111は、モデル情報104aを、メタモデルを参照しながらテンプレートに適用することにより、わずかな設計情報から望ましい仕様のアプリケーションの設計書105aを自動生成している。   The design document generation unit 111 includes a table ID d9 in the model information 104a in the model information storage unit 104a, a relative path definition information 101d in the meta model information storage unit 101, and a concrete template of the design document in the template storage unit 102. A function for generating a design document 105a including a list showing a list of file names in which the table IDd9 is combined with the relative path definition information 101d, and a function for writing the design document 105a in the design document storage unit 105. Have Supplementally, the design document generation unit 111 determines an appropriate template among the design document templates in the template storage unit 102 from the pattern specifying information d7 included in the model information 104a and the data of the metamodel storage unit 101, and this template The design information 105a is generated by applying the model information 104a. That is, the design document generation unit 111 automatically generates the application design document 105a having a desired specification from a small amount of design information by applying the model information 104a to the template while referring to the meta model.

プログラム生成部112は、モデル情報記憶部104内のモデル情報104a内のテーブルIDd9及びパターン特定情報d7と、メタモデル記憶部101内のメタモデル情報内の抽象テンプレートファイル定義情報101b及び具象テンプレートファイル定義情報101cとに基づいて、テンプレート記憶部102内の具象テンプレートファイルを決定する機能と、モデル情報104a内のテーブルIDd9及び相対パス定義情報101dに基づいて各プログラムのファイル名を生成し、当該ファイル名を上記決定した具象テンプレートファイルのファイル名とすることにより各プログラム106aを生成し、当該各プログラム106aを、ルートディレクトリ定義情報101a及び相対パス定義情報101dに基づいてプログラム記憶部106に書き込む機能と、メタモデル記憶部101内のコピー対象ファイル定義情報101e及びコピー元ファイル定義情報101fにより定義されたコピー元ファイルを、ルートディレクトリ定義情報101a及びコピー先ファイル定義情報101gに基づいて、ライブラリ記憶部103aにコピーする機能とをもっている。   The program generation unit 112 includes a table ID d9 and pattern identification information d7 in the model information 104a in the model information storage unit 104, an abstract template file definition information 101b and a concrete template file definition in the metamodel information in the metamodel storage unit 101. Based on the information 101c, the function of determining a concrete template file in the template storage unit 102, the file name of each program is generated based on the table IDd9 and the relative path definition information 101d in the model information 104a, and the file name Is set to the file name of the determined concrete template file, and each program 106a is generated based on the root directory definition information 101a and the relative path definition information 101d. The copy source file defined by the copy target file definition information 101e and the copy source file definition information 101f in the meta model storage unit 101 based on the root directory definition information 101a and the copy destination file definition information 101g. And a function of copying to the library storage unit 103a.

補足すると、プログラム生成部112は、モデル情報104aに含まれるパターン特定情報とメタモデル記憶部101のデータから、テンプレート記憶部102内のプログラムテンプレートのうち適切なテンプレートを決定し、このテンプレートにモデル情報104aを作用させてプログラム106aを生成する。モデル情報を、メタモデルを参照しながらテンプレートに適用することにより、すなわち、プログラム生成部112は、わずかな設計情報から望ましい仕様のアプリケーションのプログラム106aを自動生成する。   Supplementally, the program generation unit 112 determines an appropriate template among the program templates in the template storage unit 102 from the pattern specifying information included in the model information 104a and the data in the metamodel storage unit 101, and model information is stored in this template. The program 106a is generated by operating 104a. By applying the model information to the template while referring to the metamodel, that is, the program generation unit 112 automatically generates the application program 106a having a desired specification from a small amount of design information.

利用者端末200は、通常のコンピュータ端末であり、例えば、利用者の操作により、プログラム・設計書の生成装置100の全体制御部107を起動する機能と、設計情報入力部108から受けた各画面データに基づく各画面G10〜G40を表示する機能と、利用者の操作により、各画面G10〜G40に設計情報を入力し、生成実行を指示する機能とをもっている。   The user terminal 200 is a normal computer terminal. For example, the user terminal 200 has a function of starting the overall control unit 107 of the program / design document generation apparatus 100 by user operation and each screen received from the design information input unit 108. It has a function of displaying the screens G10 to G40 based on the data and a function of inputting design information to each of the screens G10 to G40 and instructing generation execution by a user operation.

データベース装置300は、設計情報又はモデル情報104a内のデータベース接続情報d6により接続可能なデータベースサーバであり、例えば、プログラム・設計書の生成装置100により生成されたプログラム106aの実行時に接続されるものである。例えば、図12及び図13に示したモデル情報104a内の従業員テーブル及び部署テーブルの生成時に参照される従業員データベース及び部署データベースを含むデータベースサーバである。   The database device 300 is a database server that can be connected by the database connection information d6 in the design information or model information 104a, and is connected, for example, when the program 106a generated by the program / design document generation device 100 is executed. is there. For example, the database server includes an employee database and a department database which are referred to when generating the employee table and the department table in the model information 104a shown in FIGS.

次に、以上のように構成されたプログラム・設計書の生成装置の動作を図19及び図20のシーケンス図及び図21のフローチャートを用いて説明する。   Next, the operation of the program / design document generation apparatus configured as described above will be described with reference to the sequence diagrams of FIGS. 19 and 20 and the flowchart of FIG.

利用者端末200は、利用者の操作により、全体制御部107にプログラム・設計書の生成装置100の起動を指示する(ST1)。   The user terminal 200 instructs the overall control unit 107 to start the program / design document generation apparatus 100 by the user's operation (ST1).

全体制御部107は設計情報入力部108を起動する(ST2)。   The overall control unit 107 activates the design information input unit 108 (ST2).

設計情報入力部108は、設計情報を入力するための各画面データを順次、利用者端末200に提供する。   The design information input unit 108 sequentially provides each screen data for inputting design information to the user terminal 200.

利用者端末200は、利用者の操作により、ツール情報入力画面G10、アプリケーション情報入力画面G20、アプリケーションパターン情報入力画面G30及びテーブル情報入力画面G40を順次介して設計情報入力部108に設計情報を入力する(ST3)。   The user terminal 200 inputs design information to the design information input unit 108 through the tool information input screen G10, the application information input screen G20, the application pattern information input screen G30, and the table information input screen G40 sequentially by the user's operation. (ST3).

ツール情報入力画面G10は、図15に示したように、ツール情報(d1,d2)を入力するための入力フィールドg11,g13及びボタンg12,g14〜g16を備えている。ここで「ツール情報」とはプログラム・設計書の生成装置100が動作するための基本情報を意味するものとする。入力フィールドg11には、プログラム生成先ディレクトリd1が入力される。入力フィールドg13には、ログファイル用ディレクトリd2が入力される。なお、入力フィールドg11,g13への直接入力に代えて、ボタンg12,g14を押下することにより表示されるディレクトリ選択画面によりディレクトリを指定してもよい。   As shown in FIG. 15, the tool information input screen G10 includes input fields g11 and g13 and buttons g12 and g14 to g16 for inputting tool information (d1, d2). Here, the “tool information” means basic information for the operation of the program / design document generation apparatus 100. A program generation destination directory d1 is input to the input field g11. In the input field g13, the log file directory d2 is input. Instead of direct input to the input fields g11 and g13, a directory may be specified by a directory selection screen displayed by pressing the buttons g12 and g14.

利用者端末200は、利用者によるボタンg15の押下操作により、処理を中断して本プログラム・設計書の生成装置100を終了できる。また、利用者端末200は、利用者によるボタンg16の押下操作により、次のアプリケーション情報入力画面G20に遷移できる。   The user terminal 200 can terminate the program / design document generating apparatus 100 by interrupting the processing by pressing the button g15 by the user. Further, the user terminal 200 can transition to the next application information input screen G20 by a pressing operation of the button g16 by the user.

アプリケーション情報入力画面G20は、図16に示したように、アプリケーション情報(d3〜d6)を入力するための入力フィールドg21〜g26及びボタンg27,g28を備えている。ここで「アプリケーション情報」とはプログラム・設計書の生成装置100によって生成されるアプリケーションの基本情報を意味するものとする。入力フィールドg21にはプログラムIDd3が入力される。入力フィールドg22にはプログラム名称d4が入力される。入力フィールドg23にはプログラムのパッケージ名d5が入力される。入力フィールドg24〜g26にはデータベース接続情報d6が入力される。データベース接続情報d6は、データベース装置300のURLと、接続するためのユーザ名及びパスワードとに細分でき、それぞれ各フィールドg24,g25,g26に入力される。利用者端末200は、利用者によるボタンg27の押下操作により、前の画面G10に戻ることができる。利用者端末200は、利用者によるボタンg28の押下操作により、次のアプリケーションパターン情報入力画面G30に遷移できる。   As shown in FIG. 16, the application information input screen G20 includes input fields g21 to g26 and buttons g27 and g28 for inputting application information (d3 to d6). Here, the “application information” means basic information of an application generated by the program / design document generation apparatus 100. The program IDd3 is input to the input field g21. The program name d4 is input to the input field g22. The package name d5 of the program is input to the input field g23. Database connection information d6 is input to the input fields g24 to g26. The database connection information d6 can be subdivided into a URL of the database device 300, a user name and a password for connection, and are input to the fields g24, g25, and g26, respectively. The user terminal 200 can return to the previous screen G10 by pressing the button g27 by the user. The user terminal 200 can transition to the next application pattern information input screen G30 by pressing the button g28 by the user.

アプリケーションパターン情報入力画面G30は、図17に示したように、アプリケーションパターン情報(d7,d8)を入力するためのプルダウンリストg31、入力フィールドg32,G33及びボタンg34,g35を備えている。ここで「アプリケーションパターン情報」とは、プログラム・設計書の生成装置100により生成可能な複数種類の仕様のいずれを選択するかという情報と、アプリケーションの動作を変更するための必要もしくは任意のパラメータを意味するものとする。プルダウンリストg31にはアプリケーションのパターン特定情報d7が入力される。利用者端末200は、利用者による選択操作により、予め決められたパターンからいずれかを選択する。なお、このアプリケーションのパターンは追加可能である。入力フィールドg32,g33にはオプションのキーと値d8が入力される。この例では、オプションとして、テーブルの特定カラムに格納された数値を更新の度に1ずつ加算することで同一データの更新の矛盾を防ぐ排他制御方式を採用し、オプションキーに特定カラムのカラムIDを表すキーを、オプション値に特定カラムの実際のカラムIDを指定している。このオプションキーと値は任意個数指定可能である。利用者端末200は、利用者によるボタンg34の押下操作により、前の画面G20に戻ることができる。利用者端末200は、利用者によるボタンg35の押下操作により、次のテーブル情報入力画面G40に遷移できる。   As shown in FIG. 17, the application pattern information input screen G30 includes a pull-down list g31 for inputting application pattern information (d7, d8), input fields g32, G33, and buttons g34, g35. Here, the “application pattern information” includes information indicating which of a plurality of types of specifications that can be generated by the program / design document generation apparatus 100 and necessary or arbitrary parameters for changing the operation of the application. Shall mean. The application pattern specifying information d7 is input to the pull-down list g31. The user terminal 200 selects one from a predetermined pattern by a selection operation by the user. This application pattern can be added. An optional key and a value d8 are input into the input fields g32 and g33. In this example, as an option, an exclusive control method that prevents inconsistencies in the update of the same data by adding 1 each time the numerical value stored in the specific column of the table is added, and the column ID of the specific column as the option key is adopted. The actual column ID of the specific column is designated as the option value and the key representing the. Any number of option keys and values can be specified. The user terminal 200 can return to the previous screen G20 by pressing the button g34 by the user. The user terminal 200 can transition to the next table information input screen G40 by a pressing operation of the button g35 by the user.

テーブル情報入力画面G40は、図18に示したように、入力フィールドg41〜g50及びボタンg51〜g53を備えている。入力フィールドg41にはテーブルIDd9が入力される。入力フィールドg42にはテーブルの名称d10が入力される。入力フィールドg43にはカラムIDd11が入力される。入力フィールドg44にはカラムの名称d12が入力される。入力フィールドg45にはカラムの型d13が入力される。このフィールドg45は予め決められた型から選択的に入力してもよい。入力フィールドg46,g47にはカラムの桁数・位取り数d14が入力される。入力フィールドg48にはPK属性d15が入力される。この例ではPKであれば「○」が選択され、PKでなければ「−」が選択される。入力フィールドg49にはNot Null属性d16が入力される。この例ではNotNullであれば「○」が選択され、Nullが許容されれば「−」が選択される。入力フィールドg50には画面表示属性d17が入力される。この例では当該カラムを閲覧時に画面表示するならば「○」が選択され、画面表示しないならば「−」が選択される。利用者端末200は、利用者によるボタンg51の押下操作により、前の画面G30に戻ることができる。利用者端末200は、利用者によるボタンg52の押下操作により、アプリケーション生成に用いるテーブルを追加するために新しいテーブル情報入力画面G40に遷移するか、もしくは、情報入力済みの次のテーブル情報入力画面G40に遷移する。   As shown in FIG. 18, the table information input screen G40 includes input fields g41 to g50 and buttons g51 to g53. The table IDd9 is input to the input field g41. A table name d10 is input to the input field g42. The column IDd11 is input to the input field g43. A column name d12 is input to the input field g44. The column type d13 is input to the input field g45. The field g45 may be selectively input from a predetermined type. In the input fields g46 and g47, the number of columns and the number of scales d14 are input. A PK attribute d15 is input to the input field g48. In this example, “◯” is selected if it is PK, and “−” is selected if it is not PK. A Not Null attribute d16 is input to the input field g49. In this example, “O” is selected if NotNull, and “-” is selected if Null is allowed. The screen display attribute d17 is input to the input field g50. In this example, “◯” is selected if the column is displayed on the screen during browsing, and “-” is selected if the column is not displayed. The user terminal 200 can return to the previous screen G30 by pressing the button g51 by the user. The user terminal 200 transitions to a new table information input screen G40 in order to add a table used for application generation by pressing the button g52 by the user, or the next table information input screen G40 for which information has been input. Transition to.

利用者端末200は、利用者によるボタンg53の押下操作により、テーブル情報入力を完了し、全体制御部107に対しプログラムの生成を指示する(ST4)。   The user terminal 200 completes the table information input by pressing the button g53 by the user, and instructs the overall control unit 107 to generate a program (ST4).

全体制御部107は利用者のボタン押下イベントを検出し、プログラム生成の指示を設計情報入力部108へ伝達する(ST5)。   The overall control unit 107 detects a user's button press event, and transmits a program generation instruction to the design information input unit 108 (ST5).

設計情報入力部108は、プログラム生成の指示を受け、入力情報に不正な入力がないかを検証するために検証部109に検証の指示を出す(ST6)。ここでの検証の一例は、図14に示した必須情報が無指定の場合にエラーとすることである。検証部109は、検証を実行し、検証結果を設計情報入力部108へ返却する(ST7)。検証結果は、エラーの有無、及び、エラーがあった場合はそのエラー内容を含んでいる。   The design information input unit 108 receives a program generation instruction, and issues a verification instruction to the verification unit 109 to verify whether there is an unauthorized input in the input information (ST6). An example of verification here is to make an error when the essential information shown in FIG. 14 is not specified. The verification unit 109 executes verification and returns the verification result to the design information input unit 108 (ST7). The verification result includes the presence / absence of an error and the content of the error when there is an error.

設計情報入力部108は、検証部109からの戻り値にエラーが含まれていた場合、全体制御部107へエラー情報を返却する(ST8)。全体制御部107は、そのエラー情報を利用者端末200に送信する(ST9)。   When the return value from the verification unit 109 includes an error, the design information input unit 108 returns error information to the overall control unit 107 (ST8). The overall control unit 107 transmits the error information to the user terminal 200 (ST9).

設計情報入力部108は、検証部109からの戻り値にエラーが含まれていない場合、全体制御部107へエラーが無かった旨を返却する(ST10)。全体制御部107は、モデル情報出力部110にモデル情報出力の指示を出す(ST11)。   If the error is not included in the return value from the verification unit 109, the design information input unit 108 returns to the overall control unit 107 that there is no error (ST10). Overall control unit 107 issues an instruction to output model information to model information output unit 110 (ST11).

モデル情報出力部110は、モデル情報104aを出力してモデル情報記憶部104に書き込む(ST12)。   The model information output unit 110 outputs the model information 104a and writes it in the model information storage unit 104 (ST12).

モデル情報104aの出力が完了すると、全体制御部107は設計書生成部111に設計書生成の指示を出す(ST13)。なお、ステップST13〜ST17の設計書生成処理と、ステップST18〜ST23のプログラム生成処理とは、いずれを先に実行してもよい。ここでは、ステップST13〜ST17の設計書生成処理を先に実行する場合を例に挙げて述べる。   When the output of the model information 104a is completed, the overall control unit 107 issues a design document generation instruction to the design document generation unit 111 (ST13). Note that either the design document generation process in steps ST13 to ST17 or the program generation process in steps ST18 to ST23 may be executed first. Here, a case where the design document generation process of steps ST13 to ST17 is executed first will be described as an example.

ステップST13の後、設計書生成部111は、モデル情報記憶部104内のモデル情報104aと、メタモデル記憶部101内のメタモデル情報と、テンプレート記憶部102内の設計書のテンプレート情報をそれぞれ読み出す(ST14、ST15、ST16)。ここで、メタモデル情報の例として、図8に示した相対パス定義情報101dを示す。相対パス定義情報101dは、相対パスを定義すると共に、生成されるプログラムがどのようなファイル名になるかを表したメタモデル情報である。例えばActionというステレオタイプのプログラムはrequestHandler/[table_id_caps]Action.javaという定義になっている。この定義にモデル情報104a内の生成先ディレクトリ(仮にc:\tmpとする)d1、パッケージ名(仮にfoo.barとする)d5及びテーブルID(仮にempとする)d9を加えると、生成されるプログラムの保存先はc:\tmp\foo\bar\requestHandler\EmpAction.javaとなり、クラスの完全修飾名はfoo.bar.requestHandler.EmpActionとなる。   After step ST13, the design document generation unit 111 reads model information 104a in the model information storage unit 104, metamodel information in the metamodel storage unit 101, and template information of the design document in the template storage unit 102, respectively. (ST14, ST15, ST16). Here, the relative path definition information 101d shown in FIG. 8 is shown as an example of the metamodel information. The relative path definition information 101d is metamodel information that defines a relative path and represents the file name of the generated program. For example, a stereo type program called Action is defined as requestHandler / [table_id_caps] Action.java. Generated by adding a generation destination directory (provisionally c: \ tmp) d1, package name (provisionally foo.bar) d5 and table ID (provisionally emp) d9 in the model information 104a to this definition. The program save destination is c: \ tmp \ foo \ bar \ requestHandler \ EmpAction.java, and the fully qualified class name is foo.bar.requestHandler.EmpAction.

設計書生成部111は、テンプレート記憶部102に保存された一覧形式の設計書テンプレートを利用して、プログラム一覧を示す設計書105aを生成する。設計書生成部111は、同様に、画面ファイルであるJSP(Java Server Pages)の情報を用いて、画面一覧を示す設計書105aを生成することも可能である。以上により、設計書生成部111は、モデル情報104a、メタモデル情報及び設計書テンプレートに基づいて、設計書105aを生成し(ST17)、この設計書105aを設計書記憶部105に書き込む。   The design document generation unit 111 generates a design document 105 a indicating a program list by using a list-format design document template stored in the template storage unit 102. Similarly, the design document generation unit 111 can also generate a design document 105a indicating a screen list by using information of a JSP (Java Server Pages) which is a screen file. As described above, the design document generation unit 111 generates the design document 105a based on the model information 104a, the metamodel information, and the design document template (ST17), and writes the design document 105a in the design document storage unit 105.

設計書105aの生成が完了すると、全体制御部107はプログラム生成部112に対し、プログラム生成の指示を出す(ST18)。   When the generation of the design document 105a is completed, the overall control unit 107 issues a program generation instruction to the program generation unit 112 (ST18).

プログラム生成部112は、モデル情報記憶部104内のモデル情報104a、メタモデル記憶部101内のメタモデル情報及びテンプレート記憶部102内のプログラムのテンプレート情報をそれぞれ読み出す(ST19、ST20、ST21)。   The program generation unit 112 reads the model information 104a in the model information storage unit 104, the metamodel information in the metamodel storage unit 101, and the template information of the program in the template storage unit 102 (ST19, ST20, ST21).

プログラム生成部112は、ステップST19〜ST21で読み込んだ各情報を用いてプログラム106aを生成し(ST22)、このプログラム106aをプログラム記憶部106に書き込む。また、プログラム生成部112は、そのままコピーすればよい利用ライブラリ103aを所定の場所にコピーする(ST23)。   The program generation unit 112 generates the program 106a using each information read in steps ST19 to ST21 (ST22), and writes the program 106a in the program storage unit 106. Further, the program generation unit 112 copies the usage library 103a that can be copied as it is to a predetermined location (ST23).

ここで、ステップST22,ST23の処理を図21のフローチャートを参照して詳細に説明する。   Here, the processing of steps ST22 and ST23 will be described in detail with reference to the flowchart of FIG.

プログラム生成部112は、図2及び図3に示したルートディレクトリ定義情報101aに基づいて、ディレクトリを作成する(ST22−1)。   The program generation unit 112 creates a directory based on the root directory definition information 101a shown in FIGS. 2 and 3 (ST22-1).

ルートディレクトリ定義情報101aは、生成されるプログラムが、その種類ごとにどのディレクトリを基点として生成されるかを表したメタモデル情報である。例えば、モデル情報104a内のテーブルIDd9毎に生成されるJava言語によるプログラムソースファイルは、[system_id]/WEB-INF/src/[class_name_prefix]/[table_id]という定義になっている。この定義にモデル情報104a内のプログラムID(仮にuserlistとする)d3、パッケージ名(仮にfoo.barとする)d5、テーブルID(仮にempとする)d9を加えると、当該プログラムソースファイルが生成される基点ディレクトリは、userlist/WEB-INF/src/foo/bar/emp/となる。   The root directory definition information 101a is metamodel information that indicates which directory is generated for each type of generated program. For example, a program source file in Java language generated for each table IDd9 in the model information 104a has a definition of [system_id] / WEB-INF / src / [class_name_prefix] / [table_id]. If the program ID (temporarily userlist) d3, package name (temporarily foo.bar) d5, and table ID (temporarily emp) d9 in the model information 104a are added to this definition, the program source file is generated. The base directory is userlist / WEB-INF / src / foo / bar / emp /.

プログラム生成部112は、生成すべきアプリケーションのパターンを特定し、ソースコード生成に利用する具象テンプレートを決定するために、図4〜図6に示した抽象テンプレートファイル定義情報101bを参照する(ST22−2)。   The program generation unit 112 refers to the abstract template file definition information 101b shown in FIGS. 4 to 6 in order to identify a pattern of an application to be generated and determine a concrete template used for source code generation (ST22-). 2).

抽象テンプレートファイル定義情報101bは、プログラム106aを生成する際に利用する抽象テンプレートファイルを表したメタモデル情報である。例えばActionというステレオタイプのプログラムを生成するために、Action用のテンプレートを用意しておきこれを利用するが、アプリケーションのパターンや指定するオプションにより利用するテンプレートが必ずしも唯一ではない。抽象テンプレートファイル定義情報101bとは、具体的にどのテンプレートを利用するかを決定するための情報である。抽象テンプレートファイル定義情報101bには、例えば、モデル情報104aに含まれるパターン特定情報d7毎に具象テンプレートが書かれている。また例えば、モデル情報104a内のテーブルIDd9毎に生成されるプログラム106aには、Action、Service、DAO、DSなどのステレオタイプがあり、これらは抽象テンプレート定義情報101bにjava_tableというプロパティ名で定義されており、利用する具象テンプレートを特定するキーが、それぞれcontrol_action、control_service、control_dao、control_dsである。また例えば、パターン特定情報d7が仮にAppPattern1である場合に、アプリケーション毎に生成されるプログラムは、抽象テンプレート定義情報101bにjava_application.pattern.AppPattern1というプロパティ名で定義されており、利用する具象テンプレートを特定するキーがcontrol_commonDSである。   The abstract template file definition information 101b is metamodel information representing an abstract template file used when generating the program 106a. For example, in order to generate a stereo-type program called Action, a template for Action is prepared and used, but the template used depending on the application pattern and the specified option is not necessarily unique. The abstract template file definition information 101b is information for determining which template is specifically used. In the abstract template file definition information 101b, for example, a concrete template is written for each pattern specifying information d7 included in the model information 104a. Further, for example, the program 106a generated for each table IDd9 in the model information 104a has stereotypes such as Action, Service, DAO, and DS, and these are defined by the property name java_table in the abstract template definition information 101b. The keys that specify the concrete template to be used are control_action, control_service, control_dao, and control_ds, respectively. For example, if the pattern identification information d7 is AppPattern1, the program generated for each application is defined by the property name java_application.pattern.AppPattern1 in the abstract template definition information 101b, and identifies the concrete template to be used. The key to control is control_commonDS.

プログラム生成部112は、抽象テンプレート定義情報101bと、図7に示した具象テンプレートファイル定義情報101cを参照することで、実際に利用する具象テンプレートを決定する(ST22−3)。   The program generation unit 112 determines a concrete template to be actually used by referring to the abstract template definition information 101b and the concrete template file definition information 101c shown in FIG. 7 (ST22-3).

具象テンプレートファイル定義情報101cは、プログラム106aを生成する際に利用する具象テンプレートファイルを表したメタモデル情報である。例えばActionというステレオタイプのプログラムを生成するための具象テンプレートのキーはcontrol_actionであることの例を既に示した。このキーによって決定される具象テンプレートのファイルは、lib/template/srcTemplate/controlTemplate/control_action.vmである。即ち、このパターンにおいてActionというステレオタイプのプログラムを生成するために利用する具象テンプレートファイルは、control_action.vmである。   The concrete template file definition information 101c is metamodel information representing a concrete template file used when the program 106a is generated. For example, the example of the key of the concrete template for generating a stereotype program called Action has already been shown as control_action. The concrete template file determined by this key is lib / template / srcTemplate / controlTemplate / control_action.vm. That is, the concrete template file used to generate a stereo type program called Action in this pattern is control_action.vm.

プログラム生成部112は、図8に示したプログラム生成先の相対パス定義情報101dを参照することで、プログラム生成先に指定されたディレクトリにプログラム106aを生成する(ST22−4)。   The program generation unit 112 generates the program 106a in the directory specified as the program generation destination by referring to the relative path definition information 101d of the program generation destination shown in FIG. 8 (ST22-4).

相対パス定義情報101dは、ステップST22−1で作成したプログラムの種類ごとのルートディレクトリを基点としたプログラムの生成先を示したメタモデル情報である。例えばActionというステレオタイプのプログラムを生成するための具象テンプレートのキーはcontrol_actionであることの例を既に示した。このキーによって決定されるプログラム生成先は、requestHandler/[table_id_caps]Action.javaである。[table_id_caps]は、「テーブルIDの頭文字を大文字にした文字列」を意味する変数である。即ち、emp, deptという2つのテーブルを対象とる場合Actionというステレオタイプのプログラムは、requestHandler/EmpAction.javaとrequestHandler/DeptAction.javaとなる。   The relative path definition information 101d is metamodel information indicating a program generation destination based on the root directory for each type of program created in step ST22-1. For example, the example of the key of the concrete template for generating a stereotype program called Action has already been shown as control_action. The program generation destination determined by this key is requestHandler / [table_id_caps] Action.java. [table_id_caps] is a variable meaning “a character string in which the first letter of the table ID is capitalized”. That is, when two tables emp and dept are targeted, stereotype programs called Action are requestHandler / EmpAction.java and requestHandler / DeptAction.java.

以上のステップST22−2〜ST22−4の処理は、生成対象の全てのプログラムの生成が終了するまで繰り返し実行される(ST22−5)。   The processes in steps ST22-2 to ST22-4 are repeatedly executed until the generation of all the generation target programs is completed (ST22-5).

続いて、プログラム生成部112は、図9〜図11に示したコピー対象ファイル定義情報101e、コピー元ファイル定義情報101f、コピー先ファイル定義情報101gといった各ファイルコピー情報を参照する(ST23−1)。そして、プログラム生成部112は、そのファイルコピー情報に従い所定のファイルを所定の場所へコピーする(ST23−2)。   Subsequently, the program generation unit 112 refers to each file copy information such as the copy target file definition information 101e, the copy source file definition information 101f, and the copy destination file definition information 101g shown in FIGS. 9 to 11 (ST23-1). . Then, the program generation unit 112 copies a predetermined file to a predetermined location according to the file copy information (ST23-2).

コピー対象ファイル定義情報101eは、コピーするファイルを示した抽象モデルである。例えば、jarというキーにより、そのキーに対応するコピーすべきファイルの種類を、commons-beanutils、commons-digester、jakarta-orostruts、procomposer、log4j、commons-collectionsという6種類と決定している。それぞれのファイルのコピー元とコピー先は、コピー元ファイル定義情報101f及びコピー先ファイル定義情報101gにより定義されている。例えば、procomposerというコピーすべきファイルの種類のコピー元は、コピー元ファイル定義情報101fによりlib/reference/procomposer_rt.jarである。また、このファイルのコピー先は、コピー先ファイル定義情報101gによりprocomposer_rt.jarであるが、コピー先の基点となるルートディレクトリは、先に示した例と同様に、ルートディレクトリ定義情報101aにjarというプロパティ名で定義されており[system_id]/WEB-INF/libである。   The copy target file definition information 101e is an abstract model indicating a file to be copied. For example, with the key jar, the types of files to be copied corresponding to the key are determined to be six types: commons-beanutils, commons-digester, jakarta-orostruts, composer, log4j, and commons-collections. The copy source and copy destination of each file are defined by the copy source file definition information 101f and the copy destination file definition information 101g. For example, the copy source of the file type to be copied, called procomposer, is lib / reference / procomposer_rt.jar based on the copy source file definition information 101f. Further, the copy destination of this file is "composer_rt.jar" based on the copy destination file definition information 101g, but the root directory that is the base point of the copy destination is jar in the root directory definition information 101a as in the example shown above. It is defined by property name and is [system_id] / WEB-INF / lib.

このステップST23−1〜ST23−2の処理は、コピー対象の全てのプログラムのコピーが終了するまで繰り返し実行される(ST23−3)。   The processes in steps ST23-1 to ST23-2 are repeatedly executed until the copying of all the programs to be copied is completed (ST23-3).

以上により、選択したアプリケーションのパターンに応じて、プログラムを生成する基点、利用するテンプレート、生成するディレクトリ、コピーすべきファイル、コピー先を適宜切り替えながらプログラムを生成することができる。   As described above, the program can be generated while appropriately switching the base point for generating the program, the template to be used, the directory to be generated, the file to be copied, and the copy destination in accordance with the selected application pattern.

上述したように本実施形態によれば、プログラム・設計書の生成装置100は、入力された設計情報を、各プログラムの具体的な仕様に依らない抽象的な形式のモデル情報104aに変換して出力し、このモデル情報と、メタモデル情報と、設計書の具象テンプレートとに基づいて設計書を生成して設計書記憶部105に書き込むと共に、モデル情報104aと、メタモデル情報とに基づいて、テンプレート記憶部102内の具象テンプレートファイルを決定し、モデル情報104a、メタモデル情報、及び決定した具象テンプレートファイルにより各プログラム106aを生成し、当該各プログラム106aをメタモデル情報に基づいてプログラム記憶部106に書き込む。   As described above, according to the present embodiment, the program / design document generation apparatus 100 converts the input design information into the abstract model information 104a that does not depend on the specific specifications of each program. And generating a design document based on the model information, metamodel information, and a concrete template of the design document and writing it in the design document storage unit 105, and based on the model information 104a and the metamodel information, A concrete template file in the template storage unit 102 is determined, each program 106a is generated from the model information 104a, the metamodel information, and the determined concrete template file, and each program 106a is generated based on the metamodel information. Write to.

従って、本実施形態においては、従来とは異なり、詳細な物理仕様を入力せずにプログラム及び設計書を生成できるので、アプリケーション開発の生産性を向上でき、パターン特定情報に基づいて具象テンプレートファイルを決定するので、従来とは異なり、生成対象の仕様を柔軟に設定することができる。   Therefore, in the present embodiment, unlike the conventional case, since a program and a design document can be generated without inputting detailed physical specifications, productivity of application development can be improved, and a concrete template file can be created based on pattern specifying information. Since it is determined, the specification of the generation target can be set flexibly unlike the conventional case.

また、利用者がわずかな設計情報を入力することだけで、複数のパターンの即時実行可能なアプリケーションプログラムと、該アプリケーションプログラムの設計書とを自動生成することで、プログラムと設計書の作成時間を短縮でき、アプリケーション開発の生産性を向上させることができる。   In addition, the user can input a small amount of design information and automatically generate multiple patterns of application programs that can be executed immediately and design documents for the application programs, thereby reducing the time for creating the programs and design documents. It can be shortened and the productivity of application development can be improved.

補足すると、生成するアプリケーションのパターンに応じて利用するテンプレートを切り替えることを可能にするメタモデルを定義しこれを利用することにより、詳細な物理仕様を入力しなくとも、動作するアプリケーションを自動生成できる。また同様に、生成されるアプリケーションのパターンをメタモデルに基づいて複数のテンプレートから選択しプログラムを生成できる。同様に、メタモデルを編集することで、生成するアプリケーションのパターンを容易に追加できる。   Supplementally, by defining and using a metamodel that enables switching the template to be used according to the pattern of the application to be generated, it is possible to automatically generate a running application without entering detailed physical specifications. . Similarly, a program can be generated by selecting a generated application pattern from a plurality of templates based on a meta model. Similarly, it is possible to easily add application patterns to be generated by editing the metamodel.

従って、本実施形態によれば、アプリケーション開発効率を向上させることができる。   Therefore, according to the present embodiment, application development efficiency can be improved.

これに加え、本実施形態によれば、プログラムのみを生成した従来とは異なり、プログラムの他に設計書を生成することができる。また、本実施形態によれば、テンプレートファイルをメタモデル情報に指定済みであるので、従来とは異なり、利用者がテンプレートファイルを指定せず(又は意識せず)に、プログラム及び設計書を生成することができる。さらに、本実施形態によれば、設計情報とテンプレートファイル及びディレクトリ等との関係を予めメタモデル情報に定義しておく構成により、わずかな設計情報の入力に対し、多量のプログラム及び設計書を生成することができる。なお、従来技術では、設計情報の入力量に対し、出力されるプログラムの量が比例する関係がある。   In addition to this, according to the present embodiment, a design document can be generated in addition to the program, unlike the conventional case where only the program is generated. Also, according to the present embodiment, since the template file has already been specified in the metamodel information, unlike the conventional case, the program and design document are generated without the user specifying (or not aware of) the template file. can do. Furthermore, according to the present embodiment, a large amount of programs and design documents can be generated for a small amount of design information input by previously defining the relationship between design information and template files and directories in the metamodel information. can do. In the prior art, the amount of output program is proportional to the input amount of design information.

また、テンプレート102a〜102gや利用ライブラリ103aからプログラム106a及び設計書105aを生成する構成により、利用者によるプログラミング作業を省略したので、プログラミング作業の誤りに基づくバグの混入を防ぐことができ、品質を向上させることができる。   In addition, since the program 106a and the design document 105a are generated from the templates 102a to 102g and the usage library 103a, the programming work by the user is omitted, so that it is possible to prevent bugs from being mixed due to errors in the programming work and to improve the quality. Can be improved.

さらに、全体制御部107が、生成されたプログラム106aを実行することにより、当該プログラム106aの動作を確認できるので、追加の実装が不要であり、また、追加の実装をする場合でも、当該プログラム106a及び設計書105aを手本や雛形として活用することができる。ここで、手本や雛形として活用する場合、例えば、開発標準の具体例としてプロジェクトに展開することができる。   Furthermore, since the overall control unit 107 can confirm the operation of the program 106a by executing the generated program 106a, no additional mounting is necessary, and even when additional mounting is performed, the program 106a The design document 105a can be used as a model or a model. Here, when utilizing as a model or a model, for example, it can be developed into a project as a specific example of a development standard.

また、高品質なテンプレート102a〜102gや利用ライブラリ103aに代えて、品質の不明なテンプレート(プログラム)やライブラリを用いた場合には、プログラム・設計書の生成装置100を、品質の不明なテンプレートやライブラリのテストツールとして利用することができる。   When a template (program) or library with unknown quality is used instead of the high-quality templates 102a to 102g or the use library 103a, the program / design document generating apparatus 100 It can be used as a library testing tool.

なお、上記実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスクなど)、光ディスク(CD−ROM、DVDなど)、光磁気ディスク(MO)、半導体メモリなどの記憶媒体に格納して頒布することもできる。   Note that the method described in the above embodiment includes a magnetic disk (floppy (registered trademark) disk, hard disk, etc.), an optical disk (CD-ROM, DVD, etc.), a magneto-optical disk (MO) as programs that can be executed by a computer. ), And can be distributed in a storage medium such as a semiconductor memory.

また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。   In addition, as long as the storage medium can store a program and can be read by a computer, the storage format may be any form.

また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワークソフト等のMW(ミドルウェア)等が上記実施形態を実現するための各処理の一部を実行しても良い。   In addition, an OS (operating system) running on a computer based on an instruction of a program installed in the computer from a storage medium, MW (middleware) such as database management software, network software, and the like realize the above-described embodiment. A part of each process may be executed.

さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、LANやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。   Further, the storage medium in the present invention is not limited to a medium independent of a computer, but also includes a storage medium in which a program transmitted via a LAN, the Internet, or the like is downloaded and stored or temporarily stored.

また、記憶媒体は1つに限らず、複数の媒体から上記実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。   Further, the number of storage media is not limited to one, and the case where the processing in the above embodiment is executed from a plurality of media is also included in the storage media in the present invention, and the media configuration may be any configuration.

尚、本発明におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記実施形態における各処理を実行するものであって、パソコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。   The computer according to the present invention executes each process in the above-described embodiment based on a program stored in a storage medium, and is a single device such as a personal computer or a system in which a plurality of devices are connected to a network. Any configuration may be used.

また、本発明におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。   In addition, the computer in the present invention is not limited to a personal computer, but includes an arithmetic processing device, a microcomputer, and the like included in an information processing device, and is a generic term for devices and devices that can realize the functions of the present invention by a program. .

なお、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。   Note that the present invention is not limited to the above-described embodiment as it is, and can be embodied by modifying the constituent elements without departing from the scope of the invention in the implementation stage. Moreover, various inventions can be formed by appropriately combining a plurality of constituent elements disclosed in the embodiment. For example, some components may be deleted from all the components shown in the embodiment. Furthermore, constituent elements over different embodiments may be appropriately combined.

本発明の第1の実施形態に係るプログラム・設計書の生成装置及びその周辺構成を示す模式図である。BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a schematic diagram showing a program / design document generation apparatus and its peripheral configuration according to a first embodiment of the present invention. 同実施形態におけるルートディレクトリ定義情報の一例を示す模式図である。It is a schematic diagram which shows an example of the root directory definition information in the embodiment. 同実施形態におけるルートディレクトリ定義情報の一例を示す模式図である。It is a schematic diagram which shows an example of the root directory definition information in the embodiment. 同実施形態における抽象テンプレートファイル定義情報の一例を示す模式図である。It is a schematic diagram which shows an example of the abstract template file definition information in the embodiment. 同実施形態における抽象テンプレートファイル定義情報の一例を示す模式図である。It is a schematic diagram which shows an example of the abstract template file definition information in the embodiment. 同実施形態における抽象テンプレートファイル定義情報の一例を示す模式図である。It is a schematic diagram which shows an example of the abstract template file definition information in the embodiment. 同実施形態における具象テンプレートファイル定義情報の一例を示す模式図である。It is a schematic diagram which shows an example of the concrete template file definition information in the embodiment. 同実施形態における相対パス定義情報の一例を示す模式図である。It is a schematic diagram which shows an example of the relative path definition information in the same embodiment. 同実施形態におけるコピー対象ファイル定義情報の一例を示す模式図である。It is a schematic diagram which shows an example of the copy object file definition information in the same embodiment. 同実施形態におけるコピー元ファイル定義情報の一例を示す模式図である。It is a schematic diagram which shows an example of the copy source file definition information in the same embodiment. 同実施形態におけるコピー先ファイル定義情報の一例を示す模式図である。It is a schematic diagram which shows an example of the copy destination file definition information in the same embodiment. 同実施形態におけるモデル情報の一例を示す模式図である。It is a schematic diagram which shows an example of the model information in the embodiment. 同実施形態におけるモデル情報の一例を示す模式図である。It is a schematic diagram which shows an example of the model information in the embodiment. 同実施形態における設計情報の仕様の一例を示す模式図である。It is a schematic diagram which shows an example of the specification of the design information in the embodiment. 同実施形態におけるツール情報入力画面の一例を示す模式図である。It is a schematic diagram which shows an example of the tool information input screen in the embodiment. 同実施形態におけるアプリケーション情報入力画面の一例を示す模式図である。It is a schematic diagram which shows an example of the application information input screen in the embodiment. 同実施形態におけるアプリケーションパターン情報入力画面の一例を示す模式図である。It is a schematic diagram which shows an example of the application pattern information input screen in the embodiment. 同実施形態におけるテーブル情報入力画面の一例を示す模式図である。It is a schematic diagram which shows an example of the table information input screen in the same embodiment. 同実施形態における動作を説明するためのシーケンス図である。It is a sequence diagram for demonstrating the operation | movement in the embodiment. 同実施形態における動作を説明するためのシーケンス図である。It is a sequence diagram for demonstrating the operation | movement in the embodiment. 同実施形態における動作を説明するためのフローチャートである。It is a flowchart for demonstrating the operation | movement in the embodiment.

符号の説明Explanation of symbols

100…プログラム・設計書の生成装置、101…メタモデル記憶部、101a…ルートディレクトリ定義情報、101b…抽象テンプレートファイル定義情報、101c…具象テンプレートファイル定義情報、101d…相対パス定義情報、101e…コピー対象ファイル定義情報、101f…コピー元ファイル定義情報、101g…コピー先ファイル定義情報、102…テンプレート記憶部、102a〜102f…テンプレートファイル、103…ライブラリ記憶部、103a…利用ライブラリ、104…モデル情報記憶部、104a…モデル情報、105…設計書記憶部、105a…設計書、106…プログラム記憶部、106a…プログラム、107…全体制御部、108…設計情報入力部、109…検証部、110…モデル情報出力部、111…設計書生成部、112…プログラム生成部、200…利用者端末、300…データベース装置、400…ネットワーク、d1…生成先ディレクトリ、d2…ログファイル用ディレクトリ、d3…プログラムID、d4…プログラム名称、d5…パッケージ名、d6…データベース接続情報、d7…パターン特定情報、d8…オプションのキーと値、d9…テーブルID、d10…テーブル名、d11…カラムID、d12…カラム名称、d13…カラムの型、d14…カラムの桁数・位取り数、d15…FK属性、d16…NotNull属性、d7…画面表示属性。   DESCRIPTION OF SYMBOLS 100 ... Program and design document production | generation apparatus, 101 ... Meta model memory | storage part, 101a ... Root directory definition information, 101b ... Abstract template file definition information, 101c ... Concrete template file definition information, 101d ... Relative path definition information, 101e ... Copy Target file definition information, 101f ... Copy source file definition information, 101g ... Copy destination file definition information, 102 ... Template storage unit, 102a-102f ... Template file, 103 ... Library storage unit, 103a ... Usage library, 104 ... Model information storage 104a ... model information, 105 ... design document storage unit, 105a ... design document, 106 ... program storage unit, 106a ... program, 107 ... overall control unit, 108 ... design information input unit, 109 ... verification unit, 110 ... model Information 111: Design document generation unit, 112 ... Program generation unit, 200 ... User terminal, 300 ... Database device, 400 ... Network, d1 ... Generation destination directory, d2 ... Log file directory, d3 ... Program ID, d4 ... Program name, d5 ... Package name, d6 ... Database connection information, d7 ... Pattern identification information, d8 ... Option key and value, d9 ... Table ID, d10 ... Table name, d11 ... Column ID, d12 ... Column name, d13 ... Column type, d14... Column number / scale number, d15... FK attribute, d16... NotNull attribute, d7.

Claims (4)

アプリケーションプログラムを構成する複数のプログラムと、前記各プログラムの設計書とをそれぞれ生成するためのプログラム・設計書の生成装置であって、
ルートディレクトリ定義情報、抽象テンプレートファイル定義情報、具象テンプレートファイル定義情報及び相対パス定義情報、としてのメタモデル情報が予め書き込まれたメタモデル記憶手段であって、前記ルートディレクトリ定義情報は、テーブル毎に、前記アプリケーションプログラムを示すプログラムID変数、前記アプリケーションプログラムのパッケージ名変数及び前記テーブルを示すテーブルID変数を含んでプログラム生成先を示す第1ルートディレクトリ値を関連付けており、且つ、前記アプリケーションプログラム毎に、前記プログラムID変数を含んでプログラム生成先を示す第2ルートディレクトリ値を関連付けた情報であり前記抽象テンプレートファイル定義情報は、テーブル毎に、生成される各プログラムに対応するパターン特定情報を一部に含む第1テンプレートファイル名関連付けており、且つ前記アプリケーションプログラムのパターン特定情報毎に、生成される各プログラムに対応する第2テンプレートファイル名関連付けた情報であり前記具象テンプレートファイル定義情報は、前記テンプレートファイル名毎に、ステレオタイプで規定した構造の各プログラムの具象テンプレートファイルの格納位置及び一覧形式の設計書の具象テンプレートファイルの格納位置関連付けた情報であり前記相対パス定義情報は、前記テンプレートファイル名毎に、生成されるプログラムのファイル名の一部にテーブルID変数を含んでプログラム生成先の相対パスを関連付けた情報である前記メタモデル記憶手段と、
前記具象テンプレートファイル定義情報により関連付けテンプレートファイル名及び格納位置に応じて、ステレオタイプで規定した構造の各プログラムの具象テンプレートファイルと、一覧形式の設計書の具象テンプレートファイルとが記憶されたテンプレート記憶手段と、
前記生成された設計書を記憶するための設計書記憶手段と、
前記生成された各プログラムを記憶するためのプログラム記憶手段と、
前記メタモデル記憶手段内の前記プログラムID変数、前記パッケージ名変数、前記パターン特定情報、前記テーブルID変数に対応するプログラムID、パッケージ名、パターン特定情報、テーブルID、といった項目毎に、プログラムID、パッケージ名、パターン特定情報、テーブルID、を含む設計情報を入力するための設計情報入力手段と、
前記項目毎に入力された設計情報を、前記各プログラムの具体的な仕様に依らない抽象的なXML形式で表現したモデル情報に変換して出力するモデル情報出力手段と、
前記モデル情報内のXML形式で表現されたパターン特定情報に基づき、前記メタモデル記憶手段を参照して、当該パターン特定情報に関連付けた第2テンプレートファイル名に関連付けた具象テンプレートファイルの格納位置が示す一覧形式の設計書の具象テンプレートファイルを前記テンプレート記憶手段から読み出し、前記モデル情報内のXML形式で表現されたテーブルIDと、前記相対パス定義情報と、前記読み出した一覧形式の設計書の具象テンプレートファイルとに基づいて、前記モデル情報内のテーブルIDを前記相対パス定義情報を参照しながら当該一覧形式の設計書の具象テンプレートファイルに適用することにより、前記相対パス定義情報に含まれる前記ファイル名の一部のテーブルID変数を当該テーブルIDに書き換えたファイル名を一覧して示す一覧表を当該一覧形式の設計書の具象テンプレートファイルに含む設計書を生成し、この設計書を前記設計書記憶手段に書き込む設計書生成手段と、
前記モデル情報内のテーブルID及び前記モデル情報内のパターン特定情報に基づき、前記メタモデル情報内の抽象テンプレートファイル定義情報及び具象テンプレートファイル定義情報を参照して当該テーブルID及び当該パターン特定情報に関連付けた第1テンプレートファイル名に関連付けた各プログラムの具象テンプレートファイルの格納位置が示す各プログラムの具象テンプレートファイルを前記テンプレート記憶手段から読み出すと共に、当該パターン特定情報に関連付けた第2テンプレートファイル名に関連付けた各プログラムの具象テンプレートファイルの格納位置が示す各プログラムの具象テンプレートファイルを前記テンプレート記憶手段から読み出す手段と、
前記モデル情報内のテーブルID及び前記相対パス定義情報に基づいて、前記相対パス定義情報に含まれるファイル名の一部のテーブルID変数を当該テーブルIDに書き換えて各プログラムのファイル名を生成し、当該ファイル名を前記読み出した具象テンプレートファイルのファイル名とすることによりステレオタイプで規定した構造の各プログラムを生成し、当該各プログラムを、前記ルートディレクトリ定義情報及び前記相対パス定義情報に基づいて前記ルートディレクトリ定義情報に含まれるプログラムID変数、パッケージ名変数及びテーブルID変数をそれぞれ前記モデル情報内のプログラムID、前記モデル情報内のパッケージ名及び前記モデル情報内のテーブルIDに書き換えて各プログラムのルートディレクトリ情報を生成したときの当該ルートディレクトリ情報を基点とした相対パスであって前記書き換えたファイル名を含む相対パス定義情報が示す前記相対パスに基づいて、前記プログラム記憶手段に書き込むプログラム生成手段と、
を備えたことを特徴とするプログラム・設計書の生成装置。
A program / design document generating apparatus for generating a plurality of programs constituting an application program and a design document for each program,
Meta model storage means in which meta model information as root directory definition information, abstract template file definition information, concrete template file definition information and relative path definition information is written in advance, and the root directory definition information is stored for each table. , program ID variables indicating the application program, said we can associate a first root directory value indicating a program product destination includes the package name variables and table ID variable indicating the said table of application programs, and, for each of the application programs is information that associates a second root directory value indicating a program product destination contains the program ID variable, the abstract template file definition information, for each table, each program generated Pattern identification information that respond and associating a first template file name including a part, and for each pattern specifying information of the application program, be information that associates the second template file name corresponding to each program generated the concrete template file definition information, for each of the template file name is information that associates the storage position of the concrete template file design document storage location and a list format concrete template files for each program in the specified structure with stereotype And the relative path definition information is information that associates a relative path of a program generation destination by including a table ID variable in a part of the file name of the generated program for each template file name. When,
A template storage in which concrete template files of programs having a structure defined by stereotypes and concrete template files of design documents in a list format are stored in accordance with the template file name and storage location associated by the concrete template file definition information Means,
Design document storage means for storing the generated design document;
Program storage means for storing each of the generated programs;
For each item such as the program ID variable, the package name variable, the pattern specifying information, the program ID corresponding to the table ID variable, the package name, the pattern specifying information, and the table ID in the metamodel storage unit, a program ID, Design information input means for inputting design information including package name, pattern identification information, and table ID;
Model information output means for converting the design information input for each item into model information expressed in an abstract XML format that does not depend on the specific specifications of each program;
Based on the pattern specifying information expressed in the XML format in the model information, the storage position of the concrete template file associated with the second template file name associated with the pattern specifying information is indicated by referring to the metamodel storage means. A concrete template file of a design document in a list format is read from the template storage means, a table ID expressed in the XML format in the model information, the relative path definition information, and a concrete template of the read design document in the list format The file name included in the relative path definition information by applying the table ID in the model information to the concrete template file of the design document in the list format while referring to the relative path definition information based on the file writing a portion of the table ID variables to the table ID A list showing a list of the file name instead generates a design document that includes the design document concrete template file of the list format, a design document generation means for writing the design document in the design document storage means,
Based on the table ID and pattern specific information in the model information in the model information, see the abstract template file definition information and concrete template file definition information in the meta model information, to the table ID and the pattern identification information The concrete template file of each program indicated by the storage position of the concrete template file of each program associated with the associated first template file name is read from the template storage means and associated with the second template file name associated with the pattern specifying information Means for reading the concrete template file of each program indicated by the storage position of the concrete template file of each program from the template storage means ;
Based on the table ID and the relative path definition information in the model information, a part of the table ID variable of the file name included in the relative path definition information is rewritten to the table ID to generate a file name of each program. generates each of the specified structure by the stereotype program by a file name of a concrete template file the file name is read said, the programs, on the basis of the said root directory definition information and the relative path definition information The program ID variable, package name variable, and table ID variable included in the root directory definition information are rewritten to the program ID in the model information, the package name in the model information, and the table ID in the model information, respectively. Directory information Based on the relative path indicated by the relative path definition information includes file name rewriting said a relative path to a base point the root directory information when the forms, and a program generation means for writing in said program storage means,
An apparatus for generating a program / design document, comprising:
請求項1に記載のプログラム・設計書の生成装置において、
前記ルートディレクトリ定義情報は、コピー対象ファイルの種類毎に、コピー先を示す第3ルートディレクトリ値を更に定義しており、
前記メタモデル情報は、コピー対象ファイルの種類毎に、コピー元ファイル名を定義したコピー対象ファイル定義情報と、前記コピー元ファイル名毎に、コピー元ファイルの格納位置を定義したコピー元ファイル定義情報と、前記コピー元ファイル名毎に、コピー先ファイル名を定義したコピー先ファイル定義情報と、を更に含んでおり、
前記第3ルートディレクトリ値に対応するファイル記憶手段と、
前記コピー対象ファイル定義情報及び前記コピー元ファイル定義情報により定義されたコピー元ファイルを、前記ルートディレクトリ定義情報及び前記コピー先ファイル定義情報に基づいて、前記ファイル記憶手段にコピーするファイルコピー手段と、
を更に備えたことを特徴とするプログラム・設計書の生成装置。
The program / design document generating apparatus according to claim 1,
The root directory definition information further defines a third root directory value indicating a copy destination for each type of file to be copied,
The meta model information includes copy target file definition information that defines a copy source file name for each type of copy target file, and copy source file definition information that defines a storage location of the copy source file for each copy source file name. And copy destination file definition information defining a copy destination file name for each copy source file name,
File storage means corresponding to the third root directory value;
A file copy unit that copies the copy source file defined by the copy target file definition information and the copy source file definition information to the file storage unit based on the root directory definition information and the copy destination file definition information;
An apparatus for generating a program / design document, further comprising:
アプリケーションプログラムを構成する複数のプログラムと、前記各プログラムの設計書とをそれぞれ生成し、且つメタモデル記憶手段、テンプレート記憶手段、設計書記憶手段及びプログラム記憶手段を備えたプログラム・設計書の生成装置に用いられるプログラム・設計書の生成プログラムであって、
前記プログラム・設計書の生成装置を、
ルートディレクトリ定義情報、抽象テンプレートファイル定義情報、具象テンプレートファイル定義情報及び相対パス定義情報、としてのメタモデル情報であって、前記ルートディレクトリ定義情報は、テーブル毎に、前記アプリケーションプログラムを示すプログラムID変数、前記アプリケーションプログラムのパッケージ名変数及び前記テーブルを示すテーブルID変数を含んでプログラム生成先を示す第1ルートディレクトリ値を関連付けており、且つ、前記アプリケーションプログラム毎に、前記プログラムID変数を含んでプログラム生成先を示す第2ルートディレクトリ値を関連付けた情報であり前記抽象テンプレートファイル定義情報は、テーブル毎に、生成される各プログラムに対応するパターン特定情報を一部に含む第1テンプレートファイル名関連付けており、且つ前記アプリケーションプログラムのパターン特定情報毎に、生成される各プログラムに対応する第2テンプレートファイル名関連付けた情報であり前記具象テンプレートファイル定義情報は、前記テンプレートファイル名毎に、ステレオタイプで規定した構造の各プログラムの具象テンプレートファイルの格納位置及び一覧形式の設計書の具象テンプレートファイルの格納位置関連付けた情報であり前記相対パス定義情報は、前記テンプレートファイル名毎に、生成されるプログラムのファイル名の一部にテーブルID変数を含んでプログラム生成先の相対パスを関連付けた情報である前記メタモデル情報を前記メタモデル記憶手段に書き込む手段、
前記具象テンプレートファイル定義情報により関連付けテンプレートファイル名及び格納位置に応じて、ステレオタイプで規定した構造の各プログラムの具象テンプレートファイルと、一覧形式の設計書の具象テンプレートファイルとを前記テンプレート記憶手段に書き込む手段、
前記メタモデル記憶手段内の前記プログラムID変数、前記パッケージ名変数、前記パターン特定情報、前記テーブルID変数に対応するプログラムID、パッケージ名、パターン特定情報、テーブルID、といった項目毎に、プログラムID、パッケージ名、パターン特定情報、テーブルID、を含む設計情報を入力するための設計情報入力手段と、
前記項目毎に入力された設計情報を、前記各プログラムの具体的な仕様に依らない抽象的なXML形式で表現したモデル情報に変換して出力するモデル情報出力手段、
前記モデル情報内のXML形式で表現されたパターン特定情報に基づき、前記メタモデル記憶手段を参照して、当該パターン特定情報に関連付けた第2テンプレートファイル名に関連付けた具象テンプレートファイルの格納位置が示す一覧形式の設計書の具象テンプレートファイルを前記テンプレート記憶手段から読み出し、前記モデル情報内のXML形式で表現されたテーブルIDと、前記相対パス定義情報と、前記読み出した一覧形式の設計書の具象テンプレートファイルとに基づいて、前記モデル情報内のテーブルIDを前記相対パス定義情報を参照しながら当該一覧形式の設計書の具象テンプレートファイルに適用することにより、前記相対パス定義情報に含まれる前記ファイル名の一部のテーブルID変数を当該テーブルIDに書き換えたファイル名を一覧して示す一覧表を当該一覧形式の設計書の具象テンプレートファイルに含む設計書を生成し、この設計書を前記設計書記憶手段に書き込む設計書生成手段、
前記モデル情報内のテーブルID及び前記モデル情報内のパターン特定情報に基づき、前記メタモデル情報内の抽象テンプレートファイル定義情報及び具象テンプレートファイル定義情報を参照して当該テーブルID及び当該パターン特定情報に関連付けた第1テンプレートファイル名に関連付けた各プログラムの具象テンプレートファイルの格納位置が示す各プログラムの具象テンプレートファイルを前記テンプレート記憶手段から読み出すと共に、当該パターン特定情報に関連付けた第2テンプレートファイル名に関連付けた各プログラムの具象テンプレートファイルの格納位置が示す各プログラムの具象テンプレートファイルを前記テンプレート記憶手段から読み出す手段、
前記モデル情報内のテーブルID及び前記相対パス定義情報に基づいて、前記相対パス定義情報に含まれるファイル名の一部のテーブルID変数を当該テーブルIDに書き換えて各プログラムのファイル名を生成し、当該ファイル名を前記読み出した具象テンプレートファイルのファイル名とすることによりステレオタイプで規定した構造の各プログラムを生成し、当該各プログラムを、前記ルートディレクトリ定義情報及び前記相対パス定義情報に基づいて前記ルートディレクトリ定義情報に含まれるプログラムID変数、パッケージ名変数及びテーブルID変数をそれぞれ前記モデル情報内のプログラムID、前記モデル情報内のパッケージ名及び前記モデル情報内のテーブルIDに書き換えて各プログラムのルートディレクトリ情報を生成したときの当該ルートディレクトリ情報を基点とした相対パスであって前記書き換えたファイル名を含む相対パス定義情報が示す前記相対パスに基づいて、前記プログラム記憶手段に書き込むプログラム生成手段、
として機能させるためのプログラム・設計書の生成プログラム。
A plurality of programs constituting the application program, the generation of the respective programs of design document and the form raw respectively, and meta model storage unit, a template storage unit, design documents program design document having a storage unit and a program storage means A program / design document generation program used in the device,
A device for generating the program / design document,
Metamodel information as root directory definition information, abstract template file definition information, concrete template file definition information and relative path definition information, wherein the root directory definition information is a program ID variable indicating the application program for each table. , and associates the first root directory value indicating a program product destination contains a table ID variable indicating the package name variables and the table of the application program, and, for each of the application programs, program contains the program ID variable is information that associates a second root directory value indicating the generation destination, the abstract template file definition information includes, for each table, including the pattern specifying information corresponding to each program generated in a part And associating a template file name, and for each pattern specifying information of the application program is information that associates the second template file name corresponding to each program generated, the concrete template file definition information, the template Each file name is information that associates a storage position of a concrete template file of each program having a structure defined by a stereotype and a storage position of a concrete template file of a design document in a list format , and the relative path definition information includes the template Means for writing to the metamodel storage means the metamodel information, which is information that associates a relative path of a program generation destination with a table ID variable included in a part of the file name of the generated program for each file name ;
Depending on the template file name associated with the concrete template file definition information and the storage location, a concrete template file of each program having a structure defined by a stereotype and a concrete template file of a design document in a list format are stored in the template storage means. Means to write,
For each item such as the program ID variable, the package name variable, the pattern specifying information, the program ID corresponding to the table ID variable, the package name, the pattern specifying information, and the table ID in the metamodel storage unit, a program ID, Design information input means for inputting design information including package name, pattern identification information, and table ID;
Model information output means for converting the design information input for each item into model information expressed in an abstract XML format that does not depend on the specific specifications of each program, and outputting the model information
Based on the pattern specifying information expressed in the XML format in the model information, the storage position of the concrete template file associated with the second template file name associated with the pattern specifying information is indicated by referring to the metamodel storage means. A concrete template file of a design document in a list format is read from the template storage means, a table ID expressed in the XML format in the model information, the relative path definition information, and a concrete template of the read design document in the list format The file name included in the relative path definition information by applying the table ID in the model information to the concrete template file of the design document in the list format while referring to the relative path definition information based on the file writing a portion of the table ID variables to the table ID A list showing a list of the file name instead generates a design document that contains the concrete template file design document of the list format, design document generation means for writing the design document in the design document storage means,
Based on the table ID and pattern specific information in the model information in the model information, see the abstract template file definition information and concrete template file definition information in the meta model information, to the table ID and the pattern identification information The concrete template file of each program indicated by the storage position of the concrete template file of each program associated with the associated first template file name is read from the template storage means and associated with the second template file name associated with the pattern specifying information Means for reading the concrete template file of each program indicated by the storage position of the concrete template file of each program from the template storage means;
Based on the table ID and the relative path definition information in the model information, a part of the table ID variable of the file name included in the relative path definition information is rewritten to the table ID to generate a file name of each program. generates each of the specified structure by the stereotype program by a file name of a concrete template file the file name is read said, the programs, on the basis of the said root directory definition information and the relative path definition information The program ID variable, package name variable, and table ID variable included in the root directory definition information are rewritten to the program ID in the model information, the package name in the model information, and the table ID in the model information, respectively. Directory information The root directory information on the basis of the relative path represented by the relative path definition information including the file name rewriting said a relative path to a base point, the program generation means for writing in said program storage means when the form,
A program / design document generation program to function as
請求項3に記載のプログラム・設計書の生成プログラムにおいて、
前記プログラム・設計書の生成装置は、ファイル記憶手段を更に備えており、
前記ルートディレクトリ定義情報は、コピー対象ファイルの種類毎に、コピー先を示す第3ルートディレクトリ値を更に定義しており、
前記メタモデル情報は、コピー対象ファイルの種類毎に、コピー元ファイル名を定義したコピー対象ファイル定義情報と、前記コピー元ファイル名毎に、コピー元ファイルの格納位置を定義したコピー元ファイル定義情報と、前記コピー元ファイル名毎に、コピー先ファイル名を定義したコピー先ファイル定義情報と、を更に含んでおり、
前記プログラム・設計書の生成装置を、
前記コピー対象ファイル定義情報及び前記コピー元ファイル定義情報により定義されたコピー元ファイルを、前記ルートディレクトリ定義情報及び前記コピー先ファイル定義情報に基づいて、前記ファイル記憶手段にコピーするファイルコピー手段、
として更に機能させるためのプログラム・設計書の生成プログラム。
The program / design document generation program according to claim 3,
The program / design document generation apparatus further includes file storage means,
The root directory definition information further defines a third root directory value indicating a copy destination for each type of file to be copied,
The meta model information includes copy target file definition information that defines a copy source file name for each type of copy target file, and copy source file definition information that defines a storage location of the copy source file for each copy source file name. And copy destination file definition information defining a copy destination file name for each copy source file name,
A device for generating the program / design document,
A file copy unit that copies the copy source file defined by the copy target file definition information and the copy source file definition information to the file storage unit based on the root directory definition information and the copy destination file definition information;
A program / design document generator for further functioning as
JP2008148391A 2008-06-05 2008-06-05 Program / design document generation apparatus and program / design document generation program Active JP4672754B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008148391A JP4672754B2 (en) 2008-06-05 2008-06-05 Program / design document generation apparatus and program / design document generation program
CN2009101426496A CN101599014B (en) 2008-06-05 2009-06-04 Generating device of program or design documents

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008148391A JP4672754B2 (en) 2008-06-05 2008-06-05 Program / design document generation apparatus and program / design document generation program

Publications (2)

Publication Number Publication Date
JP2009294940A JP2009294940A (en) 2009-12-17
JP4672754B2 true JP4672754B2 (en) 2011-04-20

Family

ID=41420469

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008148391A Active JP4672754B2 (en) 2008-06-05 2008-06-05 Program / design document generation apparatus and program / design document generation program

Country Status (2)

Country Link
JP (1) JP4672754B2 (en)
CN (1) CN101599014B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5426632B2 (en) * 2011-09-30 2014-02-26 株式会社東芝 Application generation program and apparatus
CN103164199B (en) * 2011-12-14 2016-05-18 中国银联股份有限公司 Application model generating apparatus and method based on hierarchy
JP5450752B1 (en) * 2012-09-26 2014-03-26 株式会社東芝 Program and design document generation apparatus and program
JP5835291B2 (en) * 2013-09-05 2015-12-24 コニカミノルタ株式会社 COMMUNICATION DEVICE, ITS CUSTOMIZATION METHOD, AND COMPUTER PROGRAM
CN112579153A (en) * 2020-12-15 2021-03-30 中国航发控制系统研究所 Method for generating software model design description

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000231479A (en) * 1999-02-10 2000-08-22 Nec Corp Software component integrating method and its device
JP2003076544A (en) * 2001-08-30 2003-03-14 Nippon Yunishisu Kk Method and device for developing web application
JP2005242479A (en) * 2004-02-24 2005-09-08 Toshiba Corp Data converting device and program for data conversion
JP2006106866A (en) * 2004-09-30 2006-04-20 Toshiba Corp Apparatus for assisting in changing conversion rule and program for assisting in changing conversion rule
JP2006268299A (en) * 2005-03-23 2006-10-05 Ns Solutions Corp Software development support system
JP2006309697A (en) * 2005-03-31 2006-11-09 Keiichi Naito Computer system, program for computer system, and program generating application program based on spreadsheet program among the programs
JP2007087127A (en) * 2005-09-22 2007-04-05 Open Stream Inc Data generation program, storage medium for storing the program, open source software developmental environment integration program, and storage medium for storing the program

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101034349A (en) * 2007-04-06 2007-09-12 西安万年科技实业有限公司 Data base application system development platform based on functional design

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000231479A (en) * 1999-02-10 2000-08-22 Nec Corp Software component integrating method and its device
JP2003076544A (en) * 2001-08-30 2003-03-14 Nippon Yunishisu Kk Method and device for developing web application
JP2005242479A (en) * 2004-02-24 2005-09-08 Toshiba Corp Data converting device and program for data conversion
JP2006106866A (en) * 2004-09-30 2006-04-20 Toshiba Corp Apparatus for assisting in changing conversion rule and program for assisting in changing conversion rule
JP2006268299A (en) * 2005-03-23 2006-10-05 Ns Solutions Corp Software development support system
JP2006309697A (en) * 2005-03-31 2006-11-09 Keiichi Naito Computer system, program for computer system, and program generating application program based on spreadsheet program among the programs
JP2007087127A (en) * 2005-09-22 2007-04-05 Open Stream Inc Data generation program, storage medium for storing the program, open source software developmental environment integration program, and storage medium for storing the program

Also Published As

Publication number Publication date
CN101599014A (en) 2009-12-09
JP2009294940A (en) 2009-12-17
CN101599014B (en) 2012-07-25

Similar Documents

Publication Publication Date Title
US7624401B2 (en) Reflection-based processing of input parameters for commands
US20090125892A1 (en) Computer Software Development System and Method
US20120005603A1 (en) Application development supporting apparatus, program, and recording medium
CN108762743B (en) Data table operation code generation method and device
JP4672754B2 (en) Program / design document generation apparatus and program / design document generation program
JP2008276690A (en) Development system, server for development system, and development method
JP2012098878A (en) Business form creation processing system and business form creation processing method and program
JP4724387B2 (en) Program conversion program, program conversion apparatus, and program conversion method
WO2021022702A1 (en) Log insertion method and apparatus, computer apparatus and storage medium
JPH06348766A (en) Method and device for incorporating tool
JP6231260B2 (en) Screen control system, screen control program, screen creation support program, and screen control method
US9098263B2 (en) Database application assembly and preparation
JP2010186423A (en) Systeme for management of distributed application setting information
JP2008165388A (en) Program update management system, program update management method and computer program
JP2001273125A (en) Method and system for automatically generating source program, and program recording medium therefor
JP5962116B2 (en) Screen control system, screen control program, screen creation support program, and screen control method
WO2007097014A1 (en) Operation confirming method for information system, its operation confirming program, recording medium, and operation confirming system
JP5450752B1 (en) Program and design document generation apparatus and program
JP2007304778A (en) Test method for program, program, test device and application development system
JP2005043931A (en) System for automatically generating program and method for automatically generating program
JP2010009145A (en) Web page creation system and web page creation program
JP4634243B2 (en) Tax payment system
JP2012118812A (en) Information processing apparatus, control method and program
JP4630640B2 (en) Design information verification apparatus and design information verification method
JP2007094453A (en) Program development support system, program development support method and program

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100323

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100513

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: 20101221

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: 20110119

R150 Certificate of patent or registration of utility model

Ref document number: 4672754

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140128

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350