JP2004303124A - Program generating device, program generating method, and program - Google Patents

Program generating device, program generating method, and program Download PDF

Info

Publication number
JP2004303124A
JP2004303124A JP2003097783A JP2003097783A JP2004303124A JP 2004303124 A JP2004303124 A JP 2004303124A JP 2003097783 A JP2003097783 A JP 2003097783A JP 2003097783 A JP2003097783 A JP 2003097783A JP 2004303124 A JP2004303124 A JP 2004303124A
Authority
JP
Japan
Prior art keywords
program
source
screen
model
button
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.)
Pending
Application number
JP2003097783A
Other languages
Japanese (ja)
Inventor
Denji Okano
傳司 岡野
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to JP2003097783A priority Critical patent/JP2004303124A/en
Publication of JP2004303124A publication Critical patent/JP2004303124A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a program generating device for automatically generating a source program. <P>SOLUTION: The source program is automatically generated by converting and padding information inputted on various screens, into a model source used as a base of the source program. The model source enables not only an experienced person but also a lower-grade person to freely define a program structure corresponding to various requested functions. Two functions i.e., a function of preparing the model source and a function of inputting detailed specification are integrated to permit complete automation of program preparation. Two functions are the function of automatically preparing the model source used as the base of the source program, and the function of automatically generating the source program by inputting the detailed specification. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は、ソースプログラムを自動生成するプログラム生成装置及び方法及びプログラムに関するものである。
【0002】
【従来の技術】
従来からソースプログラムを自動生成するプログラム生成装置が存在するが、生成したソースプログラムは完全なものではなく検査する必要があった。
【0003】
【特許文献1】
特開2003−005966号公報
【0004】
【発明が解決しようとする課題】
このため、せっかくソースプログラムを自動生成してもデバッグ等のプログラム検査に時間がかかり経済性に欠けるといった問題があった。
【0005】
本発明は、ソースプログラムを自動生成するプログラム生成装置を提供することを目的とする。
【0006】
【課題を解決するための手段】
この発明のプログラム生成装置は、ソースプログラムの基となるモデルソースを作成するモデル作成部と、
詳細仕様を入力しモデルソースを用いてソースプログラムを生成するプログラム生成部と
を備えたことを特徴とする。
【0007】
上記モデル作成部は、メモリに記憶された既存モデルの検索とモデル構造の定義機能部と、
モデルソースとツールの詳細仕様入力画面とのひもつけを定義する機能部と
を備えたことを特徴とする。
【0008】
この発明のプログラム生成方法は、ソースプログラムの基となるモデルソースを作成するモデル作成工程と、
詳細仕様を入力しモデルソースを用いてソースプログラムを生成するプログラム生成工程と
を備えたことを特徴とする。
【0009】
この発明のプログラムは、ソースプログラムの基となるモデルソースを作成するモデル作成処理と、
詳細仕様を入力しモデルソースを用いてソースプログラムを生成するプログラム生成処理と
をコンピュータに実行させること特徴とする。
【0010】
【発明の実施の形態】
実施の形態1.
図1は、実施の形態1におけるプログラム生成装置の外観を示す図である。
図1において、プログラム生成装置100は、システムユニット200、CRT(Cathode Ray Tube)表示装置41、キーボード(K/B)42、マウス43、コンパクトディスク装置(CDD)86、プリンタ装置87、スキャナ装置88を備え、これらはケーブルで接続されている。さらに、プログラム生成装置100は、FAX機310、電話器320とケーブルで接続され、また、ローカルエリアネットワーク(LAN)5、ウェブサーバ500を介してインターネット501に接続されている。
【0011】
図2は、実施の形態1におけるプログラム生成装置のハードウェア及びソフトウェア構成図である。
図2において、プログラム生成装置100は、プログラムを実行するCPU(Central Processing Unit)37を備えている。CPU37は、バス38を介してROM39(記憶装置の一例である)、RAM40(記憶装置の一例である)、通信ボード44、CRT表示装置41、K/B42、マウス43、FDD(Flexible Disk Drive)45、磁気ディスク装置46(記憶装置の一例である)、CDD86、プリンタ装置87、スキャナ装置88と接続されている。通信ボード44は、FAX機310、電話器320、LAN5等に接続されている。
例えば、通信ボード44、K/B42、マウス43、FDD45は、情報入力部の一例となる。或いは、情報入力処理をプログラムで構成する場合、プログラムは、例えば、通信ボード44、K/B42、FDD45という入力装置を用いて入力処理をおこなってもよい。或いは、CPU37を用いてCPU37の内部処理として入力処理をおこなってもよい。
また、例えば、通信ボード44、CRT表示装置41、プリンタ装置87は、情報出力部の一例となる。情報出力処理をプログラムで構成する場合、プログラムは、例えば、通信ボード44、CRT表示装置41、プリンタ装置87という出力装置を用いて出力処理をおこなってもよい。或いは、CPU37を用いてCPU37の内部処理として出力処理をおこなってもよい。
また、例えば、ROM39、RAM40、磁気ディスク装置46は、記憶部の一例となる。記憶処理をプログラムで構成する場合、プログラムは、例えば、ROM39、RAM40、磁気ディスク装置46という記憶装置を用いて記憶処理をおこなってもよい。
上記以外の各部がハードウェアで構成される場合、例えば、CPU37は、上記以外の各部の一例となる。上記以外の各部がおこなう処理をプログラムで構成する場合、プログラムは、CPU37に処理をさせる。
【0012】
ここで、通信ボードは、LAN5に限らず、直接、インターネット、或いはISDN等のWAN(ワイドエリアネットワーク)に接続されていても構わない。直接、インターネット、或いはISDN等のWANに接続されている場合、プログラム生成装置100は、インターネット、或いはISDN等のWANに接続され、ウェブサーバ500は不用となる。
磁気ディスク装置46には、オペレーティングシステム(OS)47、ウィンドウシステム48、プログラム群49、ファイル群50が記憶されている。プログラム群は、CPU37、OS47、ウィンドウシステム48により実行される。
【0013】
上記プログラム群49には、以下に述べる実施の形態の説明において「〜機能」、或いは、「〜画面」として説明するものがプログラムとして記憶されている。ファイル群50には、以下に述べる実施の形態の説明において「データベース(DB)」、「〜ファイル」、「〜画面」として説明するものが記憶されている。
【0014】
また、以下に述べる実施の形態の説明において「〜機能」、「〜画面」として説明するものは、ROM39に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、ハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。以下に述べる「〜機能」、「〜画面」は、「〜部」、「〜工程」、「〜処理(ルーチン)」と置き換えることができ、装置、方法、プログラムの実施の形態を示すものである。
【0015】
また、以下に述べる実施の形態を実施させるプログラムは、記憶装置から読み出されCPUにより実行されるものである。プログラムは、磁気ディスク装置、FD(Flexible Disk)、光ディスク、CD(コンパクトディスク)、MD(ミニディスク)、DVD(Digital Versatile Disk)等のその他の記録媒体による記録装置を用いて記憶されている。
【0016】
図3、図4は、コンピュータシステム開発プロジェクトで作成されるプログラムのソースプログラムを自動生成するツールの画面構成(画面フローチャート)を示す図である。
この実施の形態で、以下に述べる「〜画面」は、オブジェクト指向型のプログラミング言語で実現できるものであり、プログラムとしてプログラム群49に記憶され、或いは、ファイルとしてファイル群50に記憶されるものである。そして、以下に述べる「〜画面」は、CRT表示装置41の表示画面に表示される画面フォーマットと、この画面フォーマットに対して入力される情報を取得し処理する情報入力ルーチンと、入力された情報を処理する情報処理ルーチンと、処理された情報を出力する情報出力ルーチンと、入力情報、処理情報、出力情報を記憶装置に記憶する情報記憶ルーチンとを有している。
以下の説明において、「遷移する」とは、指定された画面を記憶装置から読み出して表示装置に表示することをいう。また、「定義する」とは、ある情報に他の情報を割当てた結果を記憶装置に記憶することをいう。また、「表示する」とは、情報を表示装置の表示画面に視覚的に表示することをいう。また、「検索する」とは、記憶装置に記憶された情報のなかから条件に合う情報を選択して読み出すことをいう。また、「登録する」とは、情報を不揮発性記憶装置にあるデータベースやファイルに記憶することをいう。
また、「〜ボタン」とは、画面に表示され、入力装置により選択されるアイコンをいう。
【0017】
本ツールの目的は、ソースプログラム(以下、単に、ソースともいう)の基となるモデルソースに本ツールの各種画面で入力した情報に変換し埋め込む事によってソースプログラムを自動生成することである。
モデルソースは要求される様々な機能に応じたプログラム構造を経験者のみならず下級者でも自在に定義出来る。
このモデルソースの作成機能と詳細仕様の入力機能との二つが一体となって、プログラム作成を完全自動化する事が出来る。
【0018】
本ツールの二つの機能とは、
一つ、ソースプログラムの基となるモデルソースの自動作成機能
二つ、詳細仕様を入力する事で、ソースプログラムを自動生成機能
である。
【0019】
以下に、二つの機能の概要を説明する。
【0020】
1.モデルソースの自動作成機能
(1)既存モデルの検索とモデル構造の定義機能
プログラム構造をコード化する事によって、モデルを体系的に扱え、既存モデルの再利用を実務的に可能とする。
モデルの再利用には類似性を判定するキーとなるものが必要であるが、ここではモデル構造をコード表現し、これをキーとして既存モデルとの類似性を判定する。
コードの付与は一つの処理を大分類、中分類、小分類の階層に分けて行う。
モデル構造の定義は、雛形ソースを取込み、それを分解・統合して要求されるプログラム構造に成型する。
更に、開発システムによっては共通関数や標準関数を使用せねばならない事もあり、モデル構造の定義の段階でそれらの関数を組み込む事が出来る。
【0021】
(2)モデルソースとツールの詳細仕様入力画面とのひもつけを定義する機能
上記(1)でモデル構造が決定されると、次は詳細仕様入力画面のデータがモデルのどの箇所にソースとして反映するかのひもつけ定義をする。
詳細仕様入力画面は個々に固有のIDコードとデータ受渡し情報をもっており、それを、モデルソースの指定された箇所に埋め込む事によって、詳細仕様入力画面のデータとの関係付けを行う。
【0022】
2.ソースプログラムを生成する機能
(1)詳細仕様を定義するための各種画面は以下のとおりである。
・用語定義画面
・プロジェクトクラス登録画面
・画面標準化設定画面
・クラス作成画面
・項目画面
・属性設定画面
・帳票標準化設定画面
・関数構成画面
・ファイル項目定義画面
・条件入力画面
・画面帳票項目編集画面
・SQL編集画面
・テーブル項目編集画面
・ソース生成指示画面
【0023】
(2)ソース生成
プログラム単位、関数単位の二種類のソースを選択して生成する。
【0024】
以下、各種の画面について説明する。
【0025】
(1)メニュー画面(以下、単に、メニューともいう)
(1)概要説明
モデル構造定義画面と詳細仕様入力画面(用語定義画面、プロジェクトクラス登録画面、画面標準化設定画面、帳票標準化設定画面、クラス作成各画面をいう)へ遷移する。
【0026】
(2)詳細仕様
図3と図4に示した画面構成図にある矢印の通り、画面間の遷移を行う。
【0027】
(2−1)モデル構造定義画面
(1)概要説明
雛形ソースを読み込み、それを基として新たなモデル構造を定義する。
【0028】
(2)詳細仕様
雛形ソースの対象行(関数単位)を選択する事で、モデル構造をツリーで表示し、順番の入れ替え、階層の深浅などの操作で新たなモデルをビジブルな形で表示する。
【0029】
<検索ボタン>
モデルや雛形ソースファイルを検索し表示する。
【0030】
<構造検索ボタン>
モデル構造検索画面(2−1−1)に遷移する。
【0031】
<生成ボタン>
モデル生成指示画面(2−1−3)に遷移する。
【0032】
<詳細ボタン>
構造詳細設定画面(2−2)に遷移する。
【0033】
<戻るボタン>
メニュー(1)に戻る。
【0034】
(2−1−1)モデル構造検索画面
(1)概要説明
モデルコードを入力し、既存のモデルから類似モデルを検索する。
【0035】
(2)詳細仕様
<検索ボタン>
モデル構造検索結果表示画面(2−1−1−1)に遷移する。
【0036】
<構造入力ボタン>
モデル構造入力画面(2−1−2)に遷移する。
【0037】
<終了ボタン>
モデル構造定義画面(2−1)に戻る。
【0038】
(2−1−2)モデル構造入力画面
(1)概要説明
ツリー構造を矢印(四方向)を使って成型する。その際、コードとツリーを連動して表示する。
【0039】
(2)詳細仕様
<矢印(4方向)ボタン>
ツリー構造を順番や階層を変更する。
【0040】
<OKボタン>
モデルを確定して、モデル構造検索画面(2−1−1)に戻る。
【0041】
<キャンセルボタン>
何もしないで、モデル構造検索画面(2−1−1)に戻る。
【0042】
(2−1−3)モデル生成指示画面
(1)概要説明
定義したモデルをツールに登録する。以後、ツールは当該モデルを使用出来る。
【0043】
(2)詳細仕様
<OKボタン>
モデルを登録。
【0044】
<キャンセルボタン>
何もしないで、モデル構造定義画面(2−1)に戻る。
【0045】
(2−1−1−1)モデル構造検索結果表示画面
(1)概要説明
モデルコードをキーとして検索した結果を表示する。
【0046】
(2)詳細仕様
<表示ボタン>
モデル構造入力画面に遷移する。
【0047】
<条件変更ボタン>
モデル構造検索画面に戻る。
【0048】
<キャンセルボタン>
何もしないで、モデル構造検索画面に戻る。
【0049】
(2−2)構造詳細設定画面
(1)概要説明
モデル構造に基いて、ステップ単位の詳細機能を定義する。
【0050】
(2)詳細仕様
<分類選択ボタン>
分類選択画面(2−2−1)に遷移する。
【0051】
<ツール画面ボタン>
ツール画面一覧(2−2−2)に遷移する。
【0052】
<ツール画面項目ボタン>
ツール画面項目一覧(2−2−4)に遷移する。
【0053】
<条件設定ボタン>
モデル構成使用条件画面(2−2−3)に遷移する。
【0054】
<OKボタン>
詳細機能を登録する。
【0055】
<キャンセルボタン>
何もしないで、モデル構造検索画面に戻る。
【0056】
(2−2−1)分類選択画面
(1)概要説明
モデルソースの詳細機能を3階層に区分けされた機能の中から特定する。
【0057】
(2)詳細仕様
<OKボタン>
選択内容を遷移元に返す。
【0058】
<キャンセルボタン>
何もしないで遷移元に戻る。
【0059】
(2−2−2)ツール画面一覧
(1)概要説明
モデルソースの指定された行は、ツールのどの画面とひもつけするかを定義する。
【0060】
(2)詳細仕様
<OKボタン>
選択内容を遷移元に返す。
【0061】
<キャンセルボタン>
何もしないで遷移元に戻る。
【0062】
(2−2−3)モデル構成使用条件画面
(1)概要説明
モデルソースの指定された行は、ツールの入力画面がどの様な状態のとき動作するかを定義する。
【0063】
(2)詳細仕様
<OKボタン>
選択内容を遷移元に返す。
【0064】
<キャンセルボタン>
何もしないで遷移元に戻る。
【0065】
(2−2−4)ツール画面項目一覧
(1)概要説明
モデルソースの指定された行は、ツールの入力画面のどの項目の内容と置き換えるかを定義する。
【0066】
(2)詳細仕様
<OKボタン>
選択内容を遷移元に返す。
【0067】
<キャンセルボタン>
何もしないで遷移元に戻る。
【0068】
(3−1)用語定義画面
(1)概要説明
当該プロジェクト開発で用いられる全ての単語を登録する。ここで定義されていないと、以降の画面で扱う事は出来ない。
【0069】
(2)詳細仕様
<登録ボタン>
用語情報をDBに登録する。
【0070】
<取消ボタン>
選択行をクリアする。
【0071】
<戻るボタン>
メニューに戻る。
【0072】
<詳細ボタン>
用語詳細定義画面(3−1−1)に遷移する。
【0073】
(3−1−1)用語詳細定義画面
(1)概要説明
遷移元画面で指定した行の用語について詳細(値や範囲など)を定義する。
【0074】
(2)詳細仕様
<取消ボタン>
選択行をクリアする。
【0075】
<戻るボタン>
入力情報を遷移元に引き渡す。
【0076】
(4−1)プロジェクトクラス登録画面
(1)概要説明
当該プロジェクト開発で用いるパッケージ、クラスを登録する。
【0077】
(2)詳細仕様
<OKボタン>
入力内容をDBに登録。
【0078】
<キャンセルボタン>
何もしないで遷移元に戻る。
【0079】
(5−1)画面標準化設定画面
(1)概要説明
当該プロジェクトの画面の標準属性を定義する。画面全般でも画面個々でも登録が出来る。
【0080】
(2)詳細仕様
<検索ボタン>
対象画面の内容を検索し、表示する。
【0081】
<登録ボタン>
入力した情報をDBに登録する。
【0082】
<取消ボタン>
入力内容をクリアする。
【0083】
<戻るボタン>
遷移元に戻る。
【0084】
(6−1)クラス作成画面
(1)概要説明
対象クラス(プログラム)について全ての機能の詳細を定義する。
【0085】
(2)詳細仕様
<項目ボタン>
項目画面に遷移する。
【0086】
<帳票標準化設定ボタン>
帳票標準化設定画面に遷移する。
【0087】
<関数構成ボタン>
関数構成画面に遷移する。
【0088】
<ファイル項目定義ボタン>
ファイル項目定義画面に遷移する。
【0089】
<条件入力ボタン>
条件入力画面に遷移する。
【0090】
<画面帳票項目編集ボタン>
画面帳票項目編集画面に遷移する。
【0091】
<テーブル項目編集ボタン>
テーブル項目編集画面に遷移する。
【0092】
<ソース生成ボタン>
ソース生成指示画面に遷移する。
【0093】
<検索ボタン>
対象クラスの内容を検索し、表示する。
【0094】
<登録ボタン>
入力した情報をDBに登録する。
【0095】
<取消ボタン>
入力内容をクリアする。
【0096】
<戻るボタン>
遷移元に戻る。
【0097】
(6−1−1)項目画面
(1)概要説明
当該クラスで使われる全ての項目を定義する。
【0098】
(2)詳細仕様
<属性設定ボタン>
属性設定画面に遷移する。
【0099】
<削除ボタン>
入力内容をクリアする。
【0100】
<戻るボタン>
遷移元に戻る。
【0101】
(6−1−1−1)属性設定画面
(1)概要説明
項目画面で指定した項目の全ての属性を定義する。
【0102】
(2)詳細仕様
<登録ボタン>
入力情報をDBに登録。
【0103】
<取消ボタン>
入力内容をクリアする。
【0104】
<戻るボタン>
遷移元に戻る。
【0105】
(6−1−2)帳票標準化設定画面
(1)概要説明
帳票について機能内容を定義する。
【0106】
(2)詳細仕様
<検索ボタン>
対象帳票の内容を検索し、表示する。
【0107】
<登録ボタン>
入力した情報をDBに登録する。
【0108】
<取消ボタン>
入力内容をクリアする。
【0109】
<戻るボタン>
遷移元に戻る。
【0110】
(6−1−3)関数構成画面
(1)概要説明
当該プログラムの関数構成をツリー表示する。
【0111】
(2)詳細仕様
<検索ボタン>
対象クラスを検索し、表示する。
【0112】
<戻るボタン>
遷移元に戻る。
【0113】
(6−1−4)ファイル項目定義画面
(1)概要説明
当該クラスで扱うテキストファイルの属性を定義する。
【0114】
(2)詳細仕様
<検索ボタン>
対象ファイルを検索し、表示する。
【0115】
<登録ボタン>
入力した情報をDBに登録する。
【0116】
<戻るボタン>
遷移元に戻る。
【0117】
(6−1−5)条件入力画面
(1)概要説明
処理対象項目の詳細な処理条件を定義する。
【0118】
(2)詳細仕様
<OKボタン>
入力内容をDBに登録。
【0119】
<行削除ボタン>
指定された行を削除する。
【0120】
<キャンセルボタン>
何もしないで遷移元に戻る。
【0121】
(6−1−6)画面帳票項目編集画面
(1)概要説明
画面・帳票の項目とDB及びファイルとのひもつけ定義をする。
【0122】
(2)詳細仕様
<検索ボタン>
対象関数の内容を検索し、表示する。
【0123】
<登録ボタン>
入力した情報をDBに登録する。
【0124】
<取消ボタン>
入力内容をクリアする。
【0125】
<削除ボタン>
入力行を削除する。
【0126】
<コピーボタン>
類似関数をコピーする。
【0127】
<戻るボタン>
遷移元に戻る。
【0128】
<SQL編集>
SQL編集画面に遷移する。
【0129】
(6−1−6−1)SQL編集画面
(1)概要説明
前画面の情報をSQLに自動展開する。個々の入力も可能とする。
【0130】
(2)詳細仕様
<検索ボタン>
対象関数の内容を検索し、表示する。
【0131】
<登録ボタン>
入力した情報をDBに登録する。
【0132】
<取消ボタン>
入力内容をクリアする。
【0133】
<戻るボタン>
遷移元に戻る。
【0134】
(6−1−7)テーブル項目編集画面
(1)概要説明
テーブルの更新、挿入、削除を定義する。
【0135】
(2)詳細仕様
<検索ボタン>
対象関数の内容を検索し、表示する。
【0136】
<登録ボタン>
入力した情報をDBに登録する。
【0137】
<取消ボタン>
入力内容をクリアする。
【0138】
<削除ボタン>
入力行を削除する。
【0139】
<コピーボタン>
類似関数をコピーする。
【0140】
<戻るボタン>
遷移元に戻る。
【0141】
(6−1−8)ソース生成指示画面
(1)概要説明
生成対象ソースの指定(全関数、個別関数)を行い、ソースを生成する。
【0142】
(2)詳細仕様
<コード生成ボタン>
中間ソースをDBに出力。
【0143】
<ファイル作成ボタン>
指定したファイルにソースコードを出力する。
【0144】
<戻るボタン>
遷移元に戻る。
【0145】
【発明の効果】
本発明によれば、ソースプログラムを自動生成するプログラム生成装置を提供することができる。
【図面の簡単な説明】
【図1】実施の形態1におけるプログラム生成装置の外観を示す図である。
【図2】実施の形態1におけるプログラム生成装置のハードウェア構成図である。
【図3】実施の形態1におけるプログラム生成装置の画面構成図である。
【図4】実施の形態1におけるプログラム生成装置の画面構成図である。
【符号の説明】
5 LAN、37 CPU、38 バス、39 ROM、40 RAM、41CRT表示装置、42 K/B、43 マウス、44 通信ボード、45 FDD、46 磁気ディスク装置、47 OS、48 ウィンドウシステム、49プログラム群、50 ファイル群、86 CDD、87 プリンタ装置、88スキャナ装置、100 プログラム生成装置、110 情報入力部、140 記憶部、150 出力部、200 システムユニット、310 FAX機、320 電話器、500 ウェブサーバ、501 インターネット。
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a program generation device and method for automatically generating a source program, and a program.
[0002]
[Prior art]
Conventionally, there is a program generation apparatus that automatically generates a source program. However, the generated source program is not perfect and needs to be inspected.
[0003]
[Patent Document 1]
Japanese Patent Application Laid-Open No. 2003-005966
[Problems to be solved by the invention]
For this reason, there has been a problem that even if the source program is automatically generated, it takes a long time to perform a program check such as debugging, which is not economical.
[0005]
An object of the present invention is to provide a program generation device that automatically generates a source program.
[0006]
[Means for Solving the Problems]
A program generation device according to the present invention includes: a model creation unit that creates a model source that is a basis of a source program;
A program generation unit for inputting detailed specifications and generating a source program using the model source.
[0007]
The model creation unit searches for an existing model stored in the memory and defines a model structure.
It is characterized by having a functional unit for defining a link between a model source and a detailed specification input screen of a tool.
[0008]
A program generating method according to the present invention includes a model generating step of generating a model source on which a source program is based;
A program generating step of inputting the detailed specifications and generating a source program using the model source.
[0009]
A program according to the present invention includes: a model creation process for creating a model source on which a source program is based;
The computer is configured to execute a program generation process of inputting the detailed specifications and generating a source program using the model source.
[0010]
BEST MODE FOR CARRYING OUT THE INVENTION
Embodiment 1 FIG.
FIG. 1 is a diagram illustrating an appearance of a program generation device according to the first embodiment.
In FIG. 1, a program generation device 100 includes a system unit 200, a CRT (Cathode Ray Tube) display device 41, a keyboard (K / B) 42, a mouse 43, a compact disk device (CDD) 86, a printer device 87, and a scanner device 88. Which are connected by a cable. Further, the program generation device 100 is connected to the FAX machine 310 and the telephone device 320 by cables, and is also connected to the Internet 501 via the local area network (LAN) 5 and the web server 500.
[0011]
FIG. 2 is a hardware and software configuration diagram of the program generation device according to the first embodiment.
2, the program generation device 100 includes a CPU (Central Processing Unit) 37 that executes a program. The CPU 37 includes a ROM 39 (an example of a storage device), a RAM 40 (an example of a storage device), a communication board 44, a CRT display device 41, a K / B 42, a mouse 43, and an FDD (Flexible Disk Drive) via a bus 38. 45, a magnetic disk device 46 (an example of a storage device), a CDD 86, a printer device 87, and a scanner device 88. The communication board 44 is connected to the FAX machine 310, the telephone 320, the LAN 5, and the like.
For example, the communication board 44, the K / B 42, the mouse 43, and the FDD 45 are examples of the information input unit. Alternatively, when the information input process is configured by a program, the program may perform the input process using, for example, input devices such as the communication board 44, the K / B 42, and the FDD 45. Alternatively, the CPU 37 may be used to perform input processing as internal processing of the CPU 37.
Further, for example, the communication board 44, the CRT display device 41, and the printer device 87 are examples of an information output unit. When the information output process is configured by a program, the program may perform the output process using, for example, output devices such as the communication board 44, the CRT display device 41, and the printer device 87. Alternatively, output processing may be performed as internal processing of the CPU 37 using the CPU 37.
Further, for example, the ROM 39, the RAM 40, and the magnetic disk device 46 are examples of a storage unit. When the storage process is configured by a program, the program may perform the storage process using a storage device such as the ROM 39, the RAM 40, and the magnetic disk device 46, for example.
When each unit other than the above is configured by hardware, for example, the CPU 37 is an example of each unit other than the above. When the processing performed by each unit other than the above is configured by a program, the program causes the CPU 37 to perform the processing.
[0012]
Here, the communication board is not limited to the LAN 5 and may be directly connected to the Internet or a WAN (Wide Area Network) such as ISDN. When directly connected to the Internet or a WAN such as ISDN, the program generation device 100 is connected to the Internet or a WAN such as ISDN, and the web server 500 is unnecessary.
The magnetic disk device 46 stores an operating system (OS) 47, a window system 48, a program group 49, and a file group 50. The program group is executed by the CPU 37, the OS 47, and the window system 48.
[0013]
The program group 49 stores, as programs, those described as “-functions” or “-screens” in the following description of the embodiments. In the file group 50, those described as "database (DB)", "-file", and "-screen" in the following description of the embodiment are stored.
[0014]
In the following description of the embodiments, what is described as “-function” and “-screen” may be realized by firmware stored in the ROM 39. Alternatively, the present invention may be implemented only with software, only with hardware, a combination of software and hardware, or a combination with firmware. The "-function" and "-screen" described below can be replaced with "-unit", "-process", and "-process (routine)", and show an embodiment of an apparatus, a method, and a program. is there.
[0015]
Further, a program for executing the embodiment described below is read from a storage device and executed by the CPU. The program is stored using a recording device using another recording medium such as a magnetic disk device, an FD (flexible disk), an optical disk, a CD (compact disk), an MD (mini disk), and a DVD (Digital Versatile Disk).
[0016]
3 and 4 are diagrams showing a screen configuration (screen flowchart) of a tool for automatically generating a source program of a program created in a computer system development project.
In this embodiment, "-screen" described below can be realized in an object-oriented programming language, and is stored as a program in the program group 49 or as a file in the file group 50. is there. The "-screen" described below is a screen format displayed on the display screen of the CRT display device 41, an information input routine for acquiring and processing information input for this screen format, , An information output routine for outputting processed information, and an information storage routine for storing input information, processing information, and output information in a storage device.
In the following description, “transition” refers to reading out a specified screen from a storage device and displaying it on a display device. “Defining” means storing a result of assigning certain information to another information in a storage device. Further, "display" means that information is visually displayed on a display screen of a display device. Also, “searching” means selecting and reading information that meets conditions from information stored in the storage device. “Register” means to store information in a database or a file in a nonvolatile storage device.
Further, "~ button" refers to an icon displayed on the screen and selected by the input device.
[0017]
The purpose of the tool is to automatically generate a source program by converting and embedding information input on various screens of the tool into a model source that is the basis of a source program (hereinafter, also simply referred to as a source).
The model source can freely define the program structure according to various required functions not only for experienced users but also for lower-level users.
The function of creating the model source and the function of inputting the detailed specifications are integrated, and the program creation can be completely automated.
[0018]
The two functions of this tool are
One is a function for automatically creating a model source that is the basis of a source program. The other is a function for automatically generating a source program by inputting detailed specifications.
[0019]
The outline of the two functions will be described below.
[0020]
1. Automatic model source creation function (1) Existing model search and model structure definition function By coding the program structure, the model can be systematically handled and the existing model can be reused in practice.
For reuse of the model, a key that determines the similarity is required. Here, the model structure is expressed in code, and the similarity to the existing model is determined using this as a key.
Assignment of codes is performed by dividing one process into hierarchies of middle, middle and small categories.
For the definition of the model structure, the model source is taken, and it is disassembled and integrated to form the required program structure.
Furthermore, depending on the development system, common functions and standard functions may have to be used, and these functions can be incorporated at the stage of defining the model structure.
[0021]
(2) Function to define the link between the model source and the detailed specification input screen of the tool Once the model structure is determined in (1) above, the data of the detailed specification input screen is reflected as a source in any part of the model. The link definition of what to do.
Each of the detailed specification input screens has a unique ID code and data transfer information, and the information is embedded in a designated location of the model source to associate with the data of the detailed specification input screen.
[0022]
2. Function for Generating Source Program (1) Various screens for defining detailed specifications are as follows.
・ Term definition screen ・ Project class registration screen ・ Screen standardization setting screen ・ Class creation screen ・ Item screen ・ Attribute setting screen ・ Form standardization setting screen ・ Function configuration screen ・ File item definition screen ・ Condition input screen ・ Screen form item editing screen ・SQL edit screen / table item edit screen / source generation instruction screen
(2) Source generation Two types of sources are selected and generated in units of a program and a function.
[0024]
Hereinafter, various screens will be described.
[0025]
(1) Menu screen (hereinafter simply referred to as menu)
(1) Overview Description The screen transitions to a model structure definition screen and detailed specification input screen (refers to term definition screen, project class registration screen, screen standardization setting screen, form standardization setting screen, and class creation screen).
[0026]
(2) Detailed specifications Transition between screens is performed as indicated by arrows in the screen configuration diagrams shown in FIGS.
[0027]
(2-1) Model structure definition screen (1) Outline description A template source is read, and a new model structure is defined based on the source.
[0028]
(2) By selecting a target line (function unit) of the detailed specification template source, a model structure is displayed in a tree, and a new model is displayed in a visible form by performing operations such as changing the order and changing the depth of the hierarchy.
[0029]
<Search button>
Search and display model and template source files.
[0030]
<Structure search button>
The screen transits to a model structure search screen (2-1-1).
[0031]
<Generate button>
The screen transits to a model generation instruction screen (2-1-3).
[0032]
<Detail button>
The screen transits to the detailed structure setting screen (2-2).
[0033]
<Back button>
Return to menu (1).
[0034]
(2-1-1) Model structure search screen (1) Outline explanation A model code is input, and a similar model is searched from an existing model.
[0035]
(2) Detailed specifications <Search button>
The screen is transited to a model structure search result display screen (2-1-1-1).
[0036]
<Structure input button>
The screen is transited to a model structure input screen (2-1-2).
[0037]
<End button>
The screen returns to the model structure definition screen (2-1).
[0038]
(2-1-2) Model structure input screen (1) Outline explanation A tree structure is formed using arrows (four directions). At that time, the code and the tree are displayed in conjunction.
[0039]
(2) Detailed specification <arrow (4 directions) button>
Change the order and hierarchy of the tree structure.
[0040]
<OK button>
The model is determined, and the screen returns to the model structure search screen (2-1-1).
[0041]
<Cancel button>
Do nothing and return to the model structure search screen (2-1-1).
[0042]
(2-1-3) Model generation instruction screen (1) Outline description Register the defined model in the tool. Thereafter, the tool can use the model.
[0043]
(2) Detailed specifications <OK button>
Register the model.
[0044]
<Cancel button>
Do nothing and return to the model structure definition screen (2-1).
[0045]
(2-1-1-1) Model structure search result display screen (1) Outline description A search result is displayed using the model code as a key.
[0046]
(2) Detailed specifications <display button>
Move to the model structure input screen.
[0047]
<Change condition button>
Return to the model structure search screen.
[0048]
<Cancel button>
Do nothing and return to the model structure search screen.
[0049]
(2-2) Detailed structure setting screen (1) Outline description A detailed function for each step is defined based on the model structure.
[0050]
(2) Detailed specification <Category selection button>
The screen transits to a category selection screen (2-2-1).
[0051]
<Tool screen button>
Transit to Tool Screen List (2-2-2).
[0052]
<Tool screen item button>
The screen transits to the tool screen item list (2-2-4).
[0053]
<Condition setting button>
The screen transitions to the model configuration use condition screen (2-2-3).
[0054]
<OK button>
Register the detailed function.
[0055]
<Cancel button>
Do nothing and return to the model structure search screen.
[0056]
(2-2-1) Classification selection screen (1) Outline description The detailed function of the model source is specified from the functions divided into three layers.
[0057]
(2) Detailed specifications <OK button>
Returns the selection to the transition source.
[0058]
<Cancel button>
Return to the transition source without doing anything.
[0059]
(2-2-2) Tool screen list (1) Outline description The designated line of the model source defines which screen of the tool is to be linked to.
[0060]
(2) Detailed specifications <OK button>
Returns the selection to the transition source.
[0061]
<Cancel button>
Return to the transition source without doing anything.
[0062]
(2-2-3) Model Configuration Usage Condition Screen (1) Outline Explanation The designated line of the model source defines what state the input screen of the tool operates in.
[0063]
(2) Detailed specifications <OK button>
Returns the selection to the transition source.
[0064]
<Cancel button>
Return to the transition source without doing anything.
[0065]
(2-2-4) Tool screen item list (1) Outline description The specified line of the model source defines which item on the input screen of the tool is to be replaced.
[0066]
(2) Detailed specifications <OK button>
Returns the selection to the transition source.
[0067]
<Cancel button>
Return to the transition source without doing anything.
[0068]
(3-1) Term definition screen (1) Outline description All words used in the project development are registered. If it is not defined here, it cannot be handled in subsequent screens.
[0069]
(2) Detailed specifications <Register button>
Register term information in the DB.
[0070]
<Cancel button>
Clear the selected line.
[0071]
<Back button>
back to menu.
[0072]
<Detail button>
The screen transitions to the detailed term definition screen (3-1-1).
[0073]
(3-1-1) Detailed term definition screen (1) Outline description The details (value, range, etc.) of the term in the line specified in the transition source screen are defined.
[0074]
(2) Detailed specifications <Cancel button>
Clear the selected line.
[0075]
<Back button>
Pass the input information to the transition source.
[0076]
(4-1) Project class registration screen (1) Outline description A package and a class used in the project development are registered.
[0077]
(2) Detailed specifications <OK button>
Register the input contents in DB.
[0078]
<Cancel button>
Return to the transition source without doing anything.
[0079]
(5-1) Screen standardization setting screen (1) Outline description Standard attributes of the screen of the project are defined. You can register on the whole screen or on each screen.
[0080]
(2) Detailed specifications <Search button>
Search and display the contents of the target screen.
[0081]
<Register button>
Register the entered information in the DB.
[0082]
<Cancel button>
Clear the input contents.
[0083]
<Back button>
Return to the transition source.
[0084]
(6-1) Class creation screen (1) Overview The details of all functions of the target class (program) are defined.
[0085]
(2) Detailed specification <item button>
Transit to Item screen.
[0086]
<Report standardization setting button>
Move to form standardization setting screen.
[0087]
<Function configuration button>
Transit to Function Configuration screen.
[0088]
<File item definition button>
Move to file item definition screen.
[0089]
<Condition input button>
Move to the condition input screen.
[0090]
<Screen form item edit button>
Transit to Screen form item edit screen.
[0091]
<Table item edit button>
Move to the table item edit screen.
[0092]
<Source generation button>
Move to the source generation instruction screen.
[0093]
<Search button>
Search and display the contents of the target class.
[0094]
<Register button>
Register the entered information in the DB.
[0095]
<Cancel button>
Clear the input contents.
[0096]
<Back button>
Return to the transition source.
[0097]
(6-1-1) Item screen (1) Outline description All items used in the class are defined.
[0098]
(2) Detailed specifications <Attribute setting button>
Move to attribute setting screen.
[0099]
<Delete button>
Clear the input contents.
[0100]
<Back button>
Return to the transition source.
[0101]
(6-1-1-1) Attribute setting screen (1) Define all attributes of the items specified on the overview explanation item screen.
[0102]
(2) Detailed specifications <Register button>
Register input information in DB.
[0103]
<Cancel button>
Clear the input contents.
[0104]
<Back button>
Return to the transition source.
[0105]
(6-1-2) Form standardization setting screen (1) Outline description Defines the function contents of the form.
[0106]
(2) Detailed specifications <Search button>
Search and display the contents of the target form.
[0107]
<Register button>
Register the entered information in the DB.
[0108]
<Cancel button>
Clear the input contents.
[0109]
<Back button>
Return to the transition source.
[0110]
(6-1-3) Function configuration screen (1) Outline description The function configuration of the program is displayed as a tree.
[0111]
(2) Detailed specifications <Search button>
Search and display the target class.
[0112]
<Back button>
Return to the transition source.
[0113]
(6-1-4) File item definition screen (1) Outline description Defines the attributes of the text file handled by the class.
[0114]
(2) Detailed specifications <Search button>
Search and display the target file.
[0115]
<Register button>
Register the entered information in the DB.
[0116]
<Back button>
Return to the transition source.
[0117]
(6-1-5) Condition input screen (1) Outline description Defines detailed processing conditions of the processing target item.
[0118]
(2) Detailed specifications <OK button>
Register the input contents in DB.
[0119]
<Delete row button>
Delete the specified line.
[0120]
<Cancel button>
Return to the transition source without doing anything.
[0121]
(6-1-6) Screen form item edit screen (1) Outline explanation screen / Define the link between form items, DB and file.
[0122]
(2) Detailed specifications <Search button>
Search and display the contents of the target function.
[0123]
<Register button>
Register the entered information in the DB.
[0124]
<Cancel button>
Clear the input contents.
[0125]
<Delete button>
Delete input lines.
[0126]
<Copy button>
Copy a similar function.
[0127]
<Back button>
Return to the transition source.
[0128]
<SQL editing>
The screen transits to the SQL edit screen.
[0129]
(6-1-6-1) SQL editing screen (1) Outline description Automatically develops information on the previous screen into SQL. Individual input is also possible.
[0130]
(2) Detailed specifications <Search button>
Search and display the contents of the target function.
[0131]
<Register button>
Register the entered information in the DB.
[0132]
<Cancel button>
Clear the input contents.
[0133]
<Back button>
Return to the transition source.
[0134]
(6-1-7) Table item edit screen (1) Update, insertion, and deletion of the outline explanation table are defined.
[0135]
(2) Detailed specifications <Search button>
Search and display the contents of the target function.
[0136]
<Register button>
Register the entered information in the DB.
[0137]
<Cancel button>
Clear the input contents.
[0138]
<Delete button>
Delete input lines.
[0139]
<Copy button>
Copy a similar function.
[0140]
<Back button>
Return to the transition source.
[0141]
(6-1-8) Source generation instruction screen (1) Outline description A source to be generated is specified (all functions, individual functions) and a source is generated.
[0142]
(2) Detailed specification <code generation button>
Output intermediate source to DB.
[0143]
<Create file button>
Output source code to specified file.
[0144]
<Back button>
Return to the transition source.
[0145]
【The invention's effect】
According to the present invention, it is possible to provide a program generation device that automatically generates a source program.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating an appearance of a program generation device according to a first embodiment.
FIG. 2 is a hardware configuration diagram of a program generation device according to the first embodiment.
FIG. 3 is a screen configuration diagram of the program generation device according to the first embodiment.
FIG. 4 is a screen configuration diagram of the program generation device according to the first embodiment.
[Explanation of symbols]
5 LAN, 37 CPU, 38 bus, 39 ROM, 40 RAM, 41 CRT display device, 42 K / B, 43 mouse, 44 communication board, 45 FDD, 46 magnetic disk device, 47 OS, 48 window system, 49 program group, 50 file group, 86 CDD, 87 printer device, 88 scanner device, 100 program generation device, 110 information input unit, 140 storage unit, 150 output unit, 200 system unit, 310 fax machine, 320 telephone, 500 web server, 501 the Internet.

Claims (4)

ソースプログラムの基となるモデルソースを作成するモデル作成部と、
詳細仕様を入力しモデルソースを用いてソースプログラムを生成するプログラム生成部と
を備えたことを特徴とするプログラム生成装置。
A model creation unit that creates a model source that is the basis of the source program;
A program generation unit for inputting detailed specifications and generating a source program using a model source.
上記モデル作成部は、メモリに記憶された既存モデルの検索とモデル構造の定義機能部と、
モデルソースとツールの詳細仕様入力画面とのひもつけを定義する機能部と
を備えたことを特徴とする請求項1記載のプログラム生成装置。
The model creation unit searches for an existing model stored in the memory and defines a model structure.
2. The program generating apparatus according to claim 1, further comprising a function unit for defining a link between a model source and a detailed specification input screen of a tool.
ソースプログラムの基となるモデルソースを作成するモデル作成工程と、
詳細仕様を入力しモデルソースを用いてソースプログラムを生成するプログラム生成工程と
を備えたことを特徴とするプログラム生成方法。
A model creation process for creating a model source on which the source program is based;
A program generating step of inputting detailed specifications and generating a source program using a model source.
ソースプログラムの基となるモデルソースを作成するモデル作成処理と、
詳細仕様を入力しモデルソースを用いてソースプログラムを生成するプログラム生成処理と
をコンピュータに実行させること特徴とするプログラム。
A model creation process for creating a model source on which a source program is based;
A program for causing a computer to execute a program generation process of inputting detailed specifications and generating a source program using a model source.
JP2003097783A 2003-04-01 2003-04-01 Program generating device, program generating method, and program Pending JP2004303124A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003097783A JP2004303124A (en) 2003-04-01 2003-04-01 Program generating device, program generating method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003097783A JP2004303124A (en) 2003-04-01 2003-04-01 Program generating device, program generating method, and program

Publications (1)

Publication Number Publication Date
JP2004303124A true JP2004303124A (en) 2004-10-28

Family

ID=33409481

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003097783A Pending JP2004303124A (en) 2003-04-01 2003-04-01 Program generating device, program generating method, and program

Country Status (1)

Country Link
JP (1) JP2004303124A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012123582A (en) * 2010-12-08 2012-06-28 Hitachi Ltd Data access processing management/generation system
JP2016057784A (en) * 2014-09-08 2016-04-21 京セラドキュメントソリューションズ株式会社 Application generation program, information processing device, and programming tool

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012123582A (en) * 2010-12-08 2012-06-28 Hitachi Ltd Data access processing management/generation system
JP2016057784A (en) * 2014-09-08 2016-04-21 京セラドキュメントソリューションズ株式会社 Application generation program, information processing device, and programming tool
US9495122B2 (en) 2014-09-08 2016-11-15 Kyocera Document Solutions Inc. Information processing apparatus capable of creating communication application, computer-readable non-transitory recording medium with application creating program for creating communication application stored thereon, and programming tool

Similar Documents

Publication Publication Date Title
US8631388B2 (en) Graphical editor with incremental development
US6275977B1 (en) Application cooperation method and apparatus
US7814427B2 (en) Object model tree diagram
US7953766B2 (en) Generation of attribute listings for unique identification of data subsets
JPH11296544A (en) Structured data management system and computer-readable recording medium where structured data management program is recorded
US20100179962A1 (en) Methods and Systems for Intelligent Form-Filling and Electronic Document Generation
Michotte et al. GrafiXML, a multi-target user interface builder based on UsiXML
US6973655B2 (en) System and method of integrating software components
JP5745932B2 (en) Method, program, and system for reflecting operation on object which is image of mapping in graph data
CN106709980B (en) Formalization-based complex three-dimensional scene modeling method
CN110705237A (en) Automatic document generation method, data processing device, and storage medium
CN116627418B (en) Multi-level form interface visual generation method and device based on recursion algorithm
JP3797821B2 (en) Ontology construction support device
Gómez et al. An approach to the co-creation of models and metamodels in Enterprise Architecture Projects.
US20120131543A1 (en) Method and system for capturing user interface structure in a model based software system
JPH09223007A (en) Input sheet system
JP2004303124A (en) Program generating device, program generating method, and program
JP4080495B2 (en) Project management apparatus, project management method, and project management program
JP2001344230A (en) Device and method for generating multimedia document, and recording medium with program for allowing computer to execute the method recorded thereon
JP2003150762A (en) Cooperation method for project information and its system
EP4261678A1 (en) Generation of a technical instruction
KR102588597B1 (en) Method for designing a program using operation logic designer as an alternative editor for uml sequence diagram and apparatus using the same
JP3429609B2 (en) Design information management device
JP2000011030A (en) Plant design support device
Pugliese et al. About the integration between KBE and PLM