JP4120879B2 - プログラム生成システム及び方法とそのプログラム - Google Patents

プログラム生成システム及び方法とそのプログラム Download PDF

Info

Publication number
JP4120879B2
JP4120879B2 JP2004038343A JP2004038343A JP4120879B2 JP 4120879 B2 JP4120879 B2 JP 4120879B2 JP 2004038343 A JP2004038343 A JP 2004038343A JP 2004038343 A JP2004038343 A JP 2004038343A JP 4120879 B2 JP4120879 B2 JP 4120879B2
Authority
JP
Japan
Prior art keywords
storage means
program
information
difference
storing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004038343A
Other languages
English (en)
Other versions
JP2005228235A (ja
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2004038343A priority Critical patent/JP4120879B2/ja
Publication of JP2005228235A publication Critical patent/JP2005228235A/ja
Application granted granted Critical
Publication of JP4120879B2 publication Critical patent/JP4120879B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、コンピュータシステムにおいて、設計情報と拡張可能な用語集から外部インタフェースと入出力処理を司るプログラムを生成するプログラム生成システムに関する。
従来の画面自動生成システムは、入力装置、処理装置(データ入出力設計情報格納部と、データ入出力設計情報読込部、画面定義部、画面定義情報格納部を含む)、出力装置とから構成されている(例えば、特許文献1参照)。
また、従来のプログラム生成装置は、図8に示すように、入力装置、使用ライブラリ、機能ライブラリ、用語辞書部、形式的仕様記述言語処理部、プログラムライブラリから構成されている(例えば、特許文献2参照)。
このような構成を有する従来のシステムはつぎのように動作する。形式的仕様記述言語処理部5は、共通仕様記述に宣言された機能型に対応する機能メンバ41を機能ライブラリ4の中から検索する(ステップS102)。次に、形式的仕様記述言語処理部5は、機能メンバを固有仕様記述に宣言されたデータ型及び/又は制約条件に適応する様に書き替えを行って(ステップS103)、実行可能形式に変換する(ステップS104)。このようにして生成された全てのプログラム61は、プログラムライブラリ6に格納される(ステップS105)。
この構成においては、用語辞書は、用語とその定義を保持するのみであり、プログラム中における様々な型、すなわち、識別子、パッケージ名、ファイル名、ディレクトリ名、サービス名、URLなどの命名や統一については効果を有しない。
特開2000−029677号公報 (図1) 特開平10−31586号公報 (図1,図2)
しかしながら、従来の開発では、1つのデータに関連する情報が多数の場所に分散していた。例えば、データ項目名称は、データベース設計書、画面設計書、プログラムの引数や変数宣言、通信電文設計にそれぞれ分散して設計されていた。また、同じデータ項目名称が、データベーススキーマ、画面プログラム、処理プログラム、通信プログラムなどに分散して実装されていた。
チェックロジックもデータベースのスキーマ定義、画面のデータ送信時のチェックプログラム、バックエンドの処理プログラム、電文送信時チェック、電文受信時チェックにそれぞれ分散していた。
分散により以下の問題があった:
・開発効率が悪化する。
・不整合が発生しやすい。
・仕様変更の際の効率が悪く、誤りが発生しやすい。
・プログラムの規模が増え実行効率が悪化する。
これを解決するため、用語集やルール一覧を作成する方法があったが、以下の問題があった:
・用語集を用いてプログラムを開発するのは人間であり、漏れや不整合がある。
・用語が改訂された場合の対応が難しい。
・用語が実装で使われる局面により異なる文字列にする必要があるが、全局面に関してあらかじめ定義しておくことは用語定義に時間がかかり非効率。
・業務ルールはあいまいな表現で記述される場合があり実装が困難なものがある。
・業務ルール内に登場する用語と用語集内の用語が一致しない場合がある。
これを解決するため用語集情報や設計情報からプログラムを自動生成する方法があるが、以下の問題があった:
・自動生成の元となった設計情報と生成されたプログラムの対応を取ることが難しい。
・自動生成の前に設計情報を完成させておかねばならず段階的開発が難しい。
そこで本発明は、コンピュータシステムにおいて、用語定義、データ定義、チェックロジック、処理フローなどの設計情報と、拡張可能な用語集から、画面やWebサービス、EDI電文などの外部インタフェースと入出力処理を司るプログラムを生成するプログラム生成システム及び方法とそのプログラムを提供することを目的とする。
図1は、従来の手法と本願発明の手法とを比較した図である。本発明では、用語集を作成する。その用語集に拡張情報を設け、必ず必要な識別子情報と拡張情報を分離する。設計情報から用語集を参照し、プログラム生成時に用語の変換を行う。プログラム生成はテンプレートを使用し、テンプレートのパラメータ情報で識別子を使用するか、拡張情報を使用するか、拡張情報を使用する場合はどの拡張情報を使用するかを記述する。
用語定義にプログラム中で使用される識別子を含めると共に、データ定義、チェックロジック、処理フローなどの設計情報から用語を参照するため、一貫性が保たれる。
また、1つの用語をテンプレートのパラメータ情報に応じて複数の異なる用語に変換することができる。
本発明による第1の効果は、開発効率が向上できることにある。その理由は、従来複数箇所で繰り返し定義されていた同一の情報を、用語集として1箇所で定義したためである。
第2の効果は、不整合が発生しないことにある。その理由は、従来複数箇所で定義されていた情報を1箇所で定義したためである。
第3の効果は、仕様変更の際に、用語の不整合が原因の誤りが発生しないことにある。その理由は、従来複数箇所で定義されていた情報を1箇所で定義したため、仕様変更時にも1箇所だけ変更すればよいためである。
第4の効果は、プログラムの規模が減少することにある。その理由は、従来複数箇所で定義されていた同一の情報を、1箇所で定義したため、従来は複数のプログラムで実装されていた機能を1箇所で実装できるようになるためである。
第5の効果は、拡張情報を持てるため、複雑な命令規則への対応が可能となることにある。さらに拡張情報は、網羅的に存在する必要がないため、用語集の領域を節約できる。
第6の効果は、自動生成の元となった設計情報と生成されたプログラムの対応が取りやすいことにある。その理由は、生成後の識別子が拡張情報との一致で逆変換できる可能性が高まるためである。
次に、本発明の最良の形態について図面を参照して説明する。
図2は、本発明の第1実施例の構成を示す。プログラム制御により動作するコンピュータ100は、業務用語記憶手段110と、設計情報記憶手段120と、テンプレート記憶手段130と、プログラム生成手段140と、プログラム記憶手段150と、パラメータ抽出手段160と、識別子取得手段170と、拡張情報取得手段180とを含む。これらの手段はそれぞれ概略つぎのように動作する。
業務用語記憶手段110は、業務用語とその定義、識別子、拡張情報を記憶し、プログラム生成手段140からの要求に応じ情報を返却する。設計情報記憶手段120は、設計情報と、設計情報が参照する業務用語を記憶し、プログラム生成手段140からの要求に応じ情報を返却する。テンプレート記憶手段130は、プログラムのテンプレートを記憶し、プログラム生成手段140からの要求に応じ情報を返却する。
プログラム生成手段140は、設計情報記憶手段120から、設計情報と、設計情報が参照する業務用語を取得し、業務用語を業務用語記憶手段110を参照して、業務用語に対応する識別子、もしくは拡張情報を取得し、その2種類の情報を、テンプレート記憶手段に保持したテンプレートに埋め込むことによりプログラムを生成する。プログラム記憶手段150は、プログラム生成手段140が生成したプログラムを記憶する。
パラメータ抽出手段160は、テンプレート記憶手段130から、識別子を使用するか、拡張情報を使用するか、拡張情報を使用する場合はどの拡張情報を使用するかを記述するパラメータ情報を抽出する。識別子取得手段170は、テンプレートのパラメータ情報に基づき、業務用語記憶手段110から識別子を取得する。拡張情報取得手段180は、テンプレートのパラメータ情報に基づき、業務用語記憶手段110から拡張情報を取得する。
次に、図3のフローチャートを参照して、本発明の第1実施例の動作について詳細に説明する。まず、プログラム生成手段140は、テンプレート記憶手段130からテンプレートの要素を読み込む(ステップA1)。
テンプレートの要素は、図4に示すように、転記、置換、またはループの3種類に分類される。テンプレートの要素種別に応じて次に実行するステップを判断する(ステップA2)。要素種別が転記の場合、要素をプログラム記憶手段150に転記する(ステップA3)。
次に、その要素が最後の要素かどうか判定する(ステップA12)。最後の要素でない場合はステップA1に戻って処理を続ける。最後の要素なら、処理を終了する。
要素種別が置換の場合、要素に対応する設計情報を設計情報記憶手段120から取得する(ステップA4)。次に、指定された設計情報と要素種別に合致するプログラム情報を業務用語記憶手段110から取得する(ステップA5)。さらに、取得したプログラム情報をプログラム記憶手段150に転記する(ステップA6)。そして、ステップA12の処理を行う。以後前記と同じ。
要素種別がループの場合、要素に対応する設計情報の集合を設計情報記憶手段120から取得する(ステップA7)。次に、設計情報の集合から1つ設計情報を取り出す(ステップA8)。さらに、指定された設計情報と要素型に合致するプログラム情報を業務用語記憶手段110から取得する(ステップA9)。そして、取得したプログラム情報をプログラム記憶手段150に転記する(ステップA10)。引き続き、その設計情報が集合の最後の情報かどうか判定する(ステップA11)。最後の情報でない場合はステップA8に戻って処理を続ける。最後の情報の場合はステップA12の処理を行う。以後前記と同じ。
ここで、図5に示す業務用語記憶手段の構成要素について説明する。各用語には、用語定義にプログラム中で使用される識別子を含める。用語の定義と識別子以外の情報は、拡張情報として、必ず必要な識別子情報と拡張情報を分離する。拡張情報は、テンプレート内で現れる場所に依存した情報である。各用語に対応する拡張情報の集合を、リスト形式で実現した例を示す。
次に、図6のフローチャートを参照して、上記ステップA5とステップA9に記載されている「指定された設計情報と要素型に合致するプログラム情報を業務用語記憶手段110から取得する」動作について詳細に説明する。
まず、プログラム生成手段140は、設計情報から業務用語を1つ取り出す(ステップB1)。次に、業務用語が変換されるべき要素型が識別子かどうかを判定する(ステップB2)。
識別子の場合は、業務用語に対応する識別子を用語集から取り出す(ステップB3)。そして、設計情報の業務用語を識別子で置換する(ステップB4)。設計情報内に用語が他にあるかどうか判定し、ある場合はステップB1に戻って処理を継続する。ない場合は処理を終了する(ステップB5)。
識別子ではない場合は、業務用語に対応する拡張情報の集合を業務用語記憶手段110から取り出す(ステップB6)。次に、拡張情報を集合から1つ取り出す(ステップB7)。拡張情報種別が要素型と合致しているかどうか判定する(ステップB8)。合致している場合は業務用語に対応する拡張情報を取り出す(ステップB9)。この後、ステップB4及びB5の処理を行う。以降前記と同じ。合致していない場合は最後の拡張情報かどうか判定する(ステップB10)。最後の拡張情報だった場合は、要素型と一致する拡張情報がなかったためエラーとする(ステップB11)。最後でなかった場合はステップB7に戻って処理を継続する。以降前記と同じ。
次に、本発明の第1実施例の効果について説明する。第1実施例では、設計情報が用語を参照し、プログラム生成時にその参照を利用するように構成されているため、不整合が発生しないようにできる。
また、本発明の第1実施例では、さらに、用語の定義と識別子以外の情報は拡張情報として別に管理されているため、用語定義のデータ量を減少させ、開発効率を向上できる。
次に、本発明の第2実施例の構成について図面を参照して詳細に説明する。
図7は、本発明の第2実施例の構成を示す。プログラム制御により動作するコンピュータ200は、業務用語編集手段210と、エンティティ編集手段220と、業務ルール編集手段230と、アクティビティ編集手段240と、業務用語記憶手段250と、エンティティ記憶手段260と、業務ルール記憶手段270と、アクティビティ記憶手段280と、差分記憶手段290と、DB定義生成手段300と、処理生成手段310と、画面生成手段320と、テンプレート記憶手段330と、DB表プログラム記憶手段340と、処理プログラム記憶手段350と、画面プログラム記憶手段360とを含む。これらの手段はそれぞれ概略つぎのように動作する。
業務用語編集手段210は、開発者の操作により業務用語の追加・削除・更新を行い、業務用語記憶手段250に記憶させると共に、差分記憶手段290に用語の差分を格納する。
エンティティ編集手段220は、開発者の操作により、設計情報の一種であるエンティティの追加・削除・更新を行い、エンティティ記憶手段260に記憶させると共に、差分記憶手段290にエンティティの差分を格納する。業務ルール編集手段230は、開発者の操作により、設計情報の一種である業務ルールの追加・削除・更新を行い、業務ルール記憶手段270に記憶させると共に、差分記憶手段290に業務ルールの差分を格納する。アクティビティ編集手段240は、開発者の操作により、設計情報の一種であるアクティビティの追加・削除・更新を行い、アクティビティ記憶手段280に記憶させると共に、差分記憶手段290にアクティビティの差分を格納する。
業務用語記憶手段250は、業務用語編集手段210から業務用語を受け取ると共に、DB定義生成手段300、処理生成手段310、画面生成手段320の要求に応じ業務用語と識別子、拡張情報を出力する。
エンティティ記憶手段260は、エンティティ編集手段220からエンティティを受け取ると共に、DB定義生成手段300、処理生成手段310、画面生成手段320の要求に応じエンティティを出力する。業務ルール記憶手段270は、業務ルール編集手段230から業務ルールを受け取ると共に、DB定義生成手段300、処理生成手段310、画面生成手段320の要求に応じ業務ルールを出力する。
アクティビティ記憶手段280は、アクティビティ編集手段240からアクティビティを受け取ると共に、処理生成手段310、画面生成手段320の要求に応じ業務用語と識別子、拡張情報を出力する。このとき、アクティビティはDB定義とは関係しないため、DB定義生成手段300とアクティビティ記憶手段280との関係はない。
差分記憶手段290は、各編集手段210、220、230、240の編集結果によって設計情報になされた変更の差分を記憶し、DB定義生成手段300、処理生成手段310、画面生成手段320の要求に応じ差分情報を出力する。
DB定義生成手段300は、テンプレート記憶手段330から取得したDB定義パラメータ情報に基づき、業務用語記憶手段250から取得した業務用語情報と、エンティティ記憶手段260、業務ルール記憶手段270から取得した各設計情報を元に、DB表プログラムを生成し、DB表プログラム記憶手段340に格納する。
処理生成手段310は、テンプレート記憶手段330から取得した処理パラメータ情報に基づき、業務用語記憶手段250から取得した業務用語情報と、エンティティ記憶手段260、業務ルール記憶手段270、アクティビティ記憶手段280から取得した各設計情報を元に、処理プログラムを生成し、処理プログラム記憶手段350に格納する。
画面生成手段320は、テンプレート記憶手段330から取得した画面パラメータ情報に基づき、業務用語記憶手段250から取得した業務用語情報と、エンティティ記憶手段260、業務ルール記憶手段270、アクティビティ記憶手段280から取得した各設計情報を元に、画面プログラムを生成し、画面プログラム記憶手段360に格納する。
テンプレート記憶手段330は、プログラムのテンプレートを記憶し、DB定義生成手段300、処理生成手段310、画面生成手段320からの要求に応じ情報を返却する。DB表プログラム記憶手段340は、DB定義生成手段300が生成したプログラムを記憶する。処理プログラム記憶手段350は、処理生成手段310が生成したプログラムを記憶する。画面プログラム記憶手段360は、画面生成手段320が生成したプログラムを記憶する。
パラメータ抽出手段370は、テンプレート記憶手段330から、識別子を使用するか、拡張情報を使用するか、拡張情報を使用する場合はどの拡張情報を使用するかを記述するパラメータ情報を抽出する。識別子取得手段380は、テンプレートのパラメータ情報に基づき、差分記憶手段290から識別子を取得する。拡張情報取得手段390は、テンプレートのパラメータ情報に基づき、差分記憶手段290から拡張情報を取得する。
次に、本発明の第2実施例の効果について説明する。第2実施例では、各記憶手段について編集手段が存在し、編集前後の差分を差分記憶手段290に保持し、その情報をプログラム生成時に利用するように構成されているため、自動生成時の差分を最小化することができる。
また、本発明の第2実施例では、さらに、プログラム生成時に、テンプレートを外部から読み込んで利用するように構成されているため、テンプレートの切替えにより、同一の設計情報について別のハードウェアやOSのコンピュータ上で実行させるためのプログラムを生成することができる。
次に、本発明の第3実施例について説明する。本実施例は、第1および第2実施例のコンピュータの構成をプログラムにより実現する。当該プログラムは、コンピュータに読み込まれ、コンピュータの動作を制御する。コンピュータはプログラム生成プログラムの制御により、第1および第2の実施例の構成におけるコンピュータ100および200による処理と同一の処理を実行する。
本発明によれば、業務用語の整理が必要な、一定規模を超える業務プログラムの新規開発といった用途に適用できる。また、業務プログラムの仕様が随時変更される場合の保守開発の効率化といった用途にも適用可能である。
従来の手法と本願発明の手法とを比較した図である。 本発明の第1実施例の構成図である。 第1実施例の動作を説明するフローチャートである。 テンプレートの要素を示す説明図である。 業務用語記憶手段の構成要素についての説明図である。 プログラム情報を用語集から取得する動作のフローチャートである。 本発明の第2実施例の構成図である。 従来のプログラム生成装置の構成図である。
符号の説明
100 コンピュータ
110 業務用語記憶手段
120 設計情報記憶手段
130 テンプレート記憶手段
140 プログラム生成手段
150 プログラム記憶手段
160 パラメータ抽出手段
170 識別子取得手段
180 拡張情報取得手段

Claims (6)

  1. 設計情報と用語集から外部インタフェースと入出力処理を司るプログラムを生成するプログラム生成システムであって、
    開発者の操作により業務用語の追加・削除・更新を行い、業務用語記憶手段に記憶させると共に、差分記憶手段に用語の差分を格納する業務用語編集手段と、
    開発者の操作により、設計情報を、複数の種別に分類し、該種別毎に追加・削除・更新を行い、該種別毎に複数設けられた設計情報記憶手段に記憶させると共に、差分記憶手段に設計情報の差分を該種別毎に格納する設計情報編集手段と、
    業務用語編集手段から業務用語を受け取ると共に、プログラム生成手段の要求に応じ業務用語と識別子、拡張情報を出力する業務用語記憶手段と、
    設計情報編集手段から設計情報を受け取ると共に、プログラム生成手段の要求に応じ設計情報を出力する設計情報記憶手段と、
    設計情報編集手段の編集結果によって設計情報になされた変更の差分を記憶し、プログラム生成手段の要求に応じ差分情報を出力する差分記憶手段と、
    テンプレート記憶手段から取得したプログラムパラメータ情報に基づき、業務用語記憶手段から取得した業務用語情報と、設計情報記憶手段から取得した各設計情報を元に、プログラムを生成し、プログラム記憶手段に格納するプログラム定義生成手段と、
    プログラムのテンプレートを記憶し、プログラム生成手段からの要求に応じ情報を返却するテンプレート記憶手段と、
    プログラム生成手段が生成したプログラムを記憶するプログラム記憶手段と、
    テンプレート記憶手段から、識別子を使用するか、拡張情報を使用するか、拡張情報を使用する場合はどの拡張情報を使用するかを記述するパラメータ情報を抽出するパラメータ抽出手段と、
    テンプレートのパラメータ情報に基づき、差分記憶手段から識別子を取得する識別子取得手段と、
    テンプレートのパラメータ情報に基づき、差分記憶手段から拡張情報を取得する拡張情報取得手段とを備え、
    各記憶手段について編集前後の差分を差分記憶手段に保持し、前記識別子取得手段及び拡張情報取得手段において差分記憶手段から取得した情報を前記テンプレート記憶手段において記録したテンプレートに埋め込むことによりプログラムを生成するように構成されていることを特徴とするプログラム生成システム。
  2. 設計情報と用語集から外部インタフェースと入出力処理を司るプログラムを生成するプログラム生成システムであって、
    開発者の操作により業務用語の追加・削除・更新を行い、業務用語記憶手段に記憶させると共に、差分記憶手段に用語の差分を格納する業務用語編集手段と、
    開発者の操作により、設計情報の一種であるエンティティの追加・削除・更新を行い、エンティティ記憶手段に記憶させると共に、差分記憶手段にエンティティの差分を格納するエンティティ編集手段と、
    開発者の操作により、設計情報の一種である業務ルールの追加・削除・更新を行い、業務ルール記憶手段に記憶させると共に、差分記憶手段に業務ルールの差分を格納する業務ルール編集手段と、
    開発者の操作により、設計情報の一種であるアクティビティの追加・削除・更新を行い、アクティビティ記憶手段に記憶させると共に、差分記憶手段にアクティビティの差分を格納するアクティビティ編集手段と、
    業務用語編集手段から業務用語を受け取ると共に、DB定義生成手段、処理生成手段、画面生成手段の要求に応じ業務用語と識別子、拡張情報を出力する業務用語記憶手段と、
    エンティティ編集手段からエンティティを受け取ると共に、DB定義生成手段、処理生成手段、画面生成手段の要求に応じエンティティを出力するエンティティ記憶手段と、
    業務ルール編集手段から業務ルールを受け取ると共に、DB定義生成手段、処理生成手段、画面生成手段の要求に応じ業務ルールを出力する業務ルール記憶手段と、
    アクティビティ編集手段からアクティビティを受け取ると共に、処理生成手段、画面生成手段の要求に応じ業務用語と識別子、拡張情報を出力するアクティビティ記憶手段と、
    各編集手段の編集結果によって設計情報になされた変更の差分を記憶し、DB定義生成手段、処理生成手段、画面生成手段の要求に応じ差分情報を出力する差分記憶手段と、
    テンプレート記憶手段から取得したDB定義パラメータ情報に基づき、業務用語記憶手段から取得した業務用語情報と、エンティティ記憶手段、業務ルール記憶手段から取得した各設計情報を元に、DB表プログラムを生成し、DB表プログラム記憶手段に格納するDB定義生成手段と、
    テンプレート記憶手段から取得した処理パラメータ情報に基づき、業務用語記憶手段から取得した業務用語情報と、エンティティ記憶手段、業務ルール記憶手段、アクティビティ記憶手段から取得した各設計情報を元に、処理プログラムを生成し、処理プログラム記憶手段に格納する処理生成手段と、
    テンプレート記憶手段から取得した画面パラメータ情報に基づき、業務用語記憶手段から取得した業務用語情報と、エンティティ記憶手段、業務ルール記憶手段、アクティビティ記憶手段から取得した各設計情報を元に、画面プログラムを生成し、画面プログラム記憶手段に格納する画面生成手段と、
    プログラムのテンプレートを記憶し、DB定義生成手段、処理生成手段、画面生成手段からの要求に応じ情報を返却するテンプレート記憶手段と、
    DB定義生成手段が生成したプログラムを記憶するDB表プログラム記憶手段と、
    処理生成手段が生成したプログラムを記憶する処理プログラム記憶手段と、
    画面生成手段が生成したプログラムを記憶する画面プログラム記憶手段と、
    テンプレート記憶手段から、識別子を使用するか、拡張情報を使用するか、拡張情報を使用する場合はどの拡張情報を使用するかを記述するパラメータ情報を抽出するパラメータ抽出手段と、
    テンプレートのパラメータ情報に基づき、差分記憶手段から識別子を取得する識別子取得手段と、
    テンプレートのパラメータ情報に基づき、差分記憶手段から拡張情報を取得する拡張情報取得手段とを備え、
    各記憶手段について編集前後の差分を差分記憶手段に保持し、前記識別子取得手段及び拡張情報取得手段において差分記憶手段から取得した情報を前記テンプレート記憶手段において記録したテンプレートに埋め込むことによりプログラムを生成するように構成されていることを特徴とするプログラム生成システム。
  3. 設計情報と用語集から外部インタフェースと入出力処理を司るプログラムを生成するプログラム生成方法であって、
    業務用語編集ステップにおいて編集した業務用語を受け取ると共に、プログラム生成ステップの要求に応じ業務用語と識別子、拡張情報を出力する業務用語記憶手段を用意するステップと、
    設計情報編集ステップから設計情報を受け取ると共に、プログラム生成手段の要求に応じ設計情報を出力する設計情報記憶手段を用意するステップと、
    設計情報編集ステップの編集結果によって設計情報になされた変更の差分を記憶し、プログラム生成ステップの要求に応じ差分情報を出力する差分記憶手段を用意するステップと、
    プログラムのテンプレートを記憶し、プログラム生成ステップからの要求に応じ情報を返却するテンプレート記憶手段を用意するステップと、
    プログラム生成ステップが生成したプログラムを記憶するプログラム記憶手段を用意するステップと、
    開発者の操作により業務用語の追加・削除・更新を行い、業務用語記憶手段に記憶させると共に、差分記憶手段に用語の差分を格納する業務用語編集ステップと、
    開発者の操作により、設計情報を、複数の種別に分類し、該種別毎に追加・削除・更新を行い、該種別毎に複数設けられた設計情報記憶手段に記憶させると共に、差分記憶手段に設計情報の差分を該種別毎に格納する設計情報編集ステップと、
    テンプレート記憶手段から取得したプログラムパラメータ情報に基づき、業務用語記憶手段から取得した業務用語情報と、設計情報記憶手段から取得した各設計情報を元に、プログラムを生成し、プログラム記憶手段に格納するプログラム定義生成ステップと、
    テンプレート記憶手段から、識別子を使用するか、拡張情報を使用するか、拡張情報を使用する場合はどの拡張情報を使用するかを記述するパラメータ情報を抽出するパラメータ抽出ステップと、
    テンプレートのパラメータ情報に基づき、差分記憶手段から識別子を取得する識別子取得ステップと、
    テンプレートのパラメータ情報に基づき、差分記憶手段から拡張情報を取得する拡張情報取得ステップとを備え、
    各記憶手段について編集前後の差分を差分記憶手段に保持し、前記識別子取得ステップ及び拡張情報取得ステップにおいて差分記憶手段から取得した情報を前記テンプレート記憶手段において記録したテンプレートに埋め込むことによりプログラムを生成するように方法を実行することを特徴とするプログラム生成方法。
  4. 設計情報と用語集から外部インタフェースと入出力処理を司るプログラムを生成するプログラム生成方法であって、
    業務用語編集ステップにおいて編集した業務用語を受け取ると共に、DB定義生成ステップ、処理生成ステップ、画面生成ステップの要求に応じ業務用語と識別子、拡張情報を出力する業務用語記憶手段を用意するステップと、
    エンティティ編集ステップからエンティティを受け取ると共に、DB定義生成ステップ、処理生成ステップ、画面生成ステップの要求に応じエンティティを出力するエンティティ記憶手段を用意するステップと、
    業務ルール編集ステップから業務ルールを受け取ると共に、DB定義生成ステップ、処理生成ステップ、画面生成ステップの要求に応じ業務ルールを出力する業務ルール記憶手段を用意するステップと、
    アクティビティ編集ステップからアクティビティを受け取ると共に、処理生成ステップ、画面生成ステップの要求に応じ業務用語と識別子、拡張情報を出力するアクティビティ記憶手段を用意するステップと、
    各編集ステップの編集結果によって設計情報になされた変更の差分を記憶し、DB定義生成ステップ、処理生成ステップ、画面生成ステップの要求に応じ差分情報を出力する差分記憶手段とを用意するステップ、
    プログラムのテンプレートを記憶し、DB定義生成ステップ、処理生成ステップ、画面生成ステップからの要求に応じ情報を返却するテンプレート記憶手段を用意するステップと、
    DB定義生成ステップが生成したプログラムを記憶するDB表プログラム記憶手段を用意するステップと、
    処理生成ステップが生成したプログラムを記憶する処理プログラム記憶手段を用意するステップと、
    画面生成ステップが生成したプログラムを記憶する画面プログラム記憶手段を用意するステップと、
    開発者の操作により業務用語の追加・削除・更新を行い、業務用語記憶手段に記憶させると共に、差分記憶手段に用語の差分を格納する業務用語編集ステップと、
    開発者の操作により、設計情報の一種であるエンティティの追加・削除・更新を行い、エンティティ記憶手段に記憶させると共に、差分記憶手段にエンティティの差分を格納するエンティティ編集ステップと、
    開発者の操作により、設計情報の一種である業務ルールの追加・削除・更新を行い、業務ルール記憶手段に記憶させると共に、差分記憶手段に業務ルールの差分を格納する業務ルール編集ステップと、
    開発者の操作により、設計情報の一種であるアクティビティの追加・削除・更新を行い、アクティビティ記憶手段に記憶させると共に、差分記憶手段にアクティビティの差分を格納するアクティビティ編集ステップと、
    テンプレート記憶手段から取得したDB定義パラメータ情報に基づき、業務用語記憶手段から取得した業務用語情報と、エンティティ記憶手段、業務ルール記憶手段から取得した各設計情報を元に、DB表プログラムを生成し、DB表プログラム記憶手段に格納するDB定義生成ステップと、
    テンプレート記憶手段から取得した処理パラメータ情報に基づき、業務用語記憶手段から取得した業務用語情報と、エンティティ記憶手段、業務ルール記憶手段、アクティビティ記憶手段から取得した各設計情報を元に、処理プログラムを生成し、処理プログラム記憶手段に格納する処理生成ステップと、
    テンプレート記憶手段から取得した画面パラメータ情報に基づき、業務用語記憶手段から取得した業務用語情報と、エンティティ記憶手段、業務ルール記憶手段、アクティビティ記憶手段から取得した各設計情報を元に、画面プログラムを生成し、画面プログラム記憶手段に格納する画面生成ステップと、
    テンプレート記憶手段から、識別子を使用するか、拡張情報を使用するか、拡張情報を使用する場合はどの拡張情報を使用するかを記述するパラメータ情報を抽出するパラメータ抽出ステップと、
    テンプレートのパラメータ情報に基づき、差分記憶手段から識別子を取得する識別子取得ステップと、
    テンプレートのパラメータ情報に基づき、差分記憶手段から拡張情報を取得する拡張情報取得ステップとを備え、
    各記憶手段について編集前後の差分を差分記憶手段に保持し、前記識別子取得ステップ及び拡張情報取得ステップにおいて差分記憶手段から取得した情報を前記テンプレート記憶手段において記録したテンプレートに埋め込むことによりプログラムを生成するように方法を実行することを特徴とするプログラム生成方法。
  5. 設計情報と用語集から外部インタフェースと入出力処理を司るプログラムを生成するプログラム生成プログラムであって、
    業務用語編集機能において編集した業務用語を受け取ると共に、プログラム生成機能の要求に応じ業務用語と識別子、拡張情報を出力する業務用語記憶手段を用意する機能と、
    設計情報編集機能から設計情報を受け取ると共に、プログラム生成手段の要求に応じ設計情報を出力する設計情報記憶手段を用意する機能と、
    設計情報編集機能の編集結果によって設計情報になされた変更の差分を記憶し、プログラム生成機能の要求に応じ差分情報を出力する差分記憶手段を用意する機能と、
    プログラムのテンプレートを記憶し、プログラム生成機能からの要求に応じ情報を返却するテンプレート記憶手段を用意する機能と、
    プログラム生成機能が生成したプログラムを記憶するプログラム記憶手段を用意する機能と、
    開発者の操作により業務用語の追加・削除・更新を行い、業務用語記憶手段に記憶させると共に、差分記憶手段に用語の差分を格納する業務用語編集機能と、
    開発者の操作により、設計情報を、複数の種別に分類し、該種別毎に追加・削除・更新を行い、該種別毎に複数設けられた設計情報記憶手段に記憶させると共に、差分記憶手段に設計情報の差分を該種別毎に格納する設計情報編集機能と、
    テンプレート記憶手段から取得したプログラムパラメータ情報に基づき、業務用語記憶手段から取得した業務用語情報と、設計情報記憶手段から取得した各設計情報を元に、プログラムを生成し、プログラム記憶手段に格納するプログラム定義生成機能と、
    テンプレート記憶手段から、識別子を使用するか、拡張情報を使用するか、拡張情報を使用する場合はどの拡張情報を使用するかを記述するパラメータ情報を抽出するパラメータ抽出機能と、
    テンプレートのパラメータ情報に基づき、差分記憶手段から識別子を取得する識別子取得機能と、
    テンプレートのパラメータ情報に基づき、差分記憶手段から拡張情報を取得する拡張情報取得機能とをコンピュータに実現させ、
    各記憶手段について編集前後の差分を差分記憶手段に保持し、前記識別子取得機能及び拡張情報取得機能において差分記憶手段から取得した情報を前記テンプレート記憶手段において記録したテンプレートに埋め込むことによりプログラムを生成するようにコンピュータを動作させることを特徴とするプログラム生成プログラム。
  6. 設計情報と用語集から外部インタフェースと入出力処理を司るプログラムを生成するプログラム生成プログラムであって、
    業務用語編集機能において編集した業務用語を受け取ると共に、DB定義生成機能、処理生成機能、画面生成機能の要求に応じ業務用語と識別子、拡張情報を出力する業務用語記憶手段を用意する機能と、
    エンティティ編集機能からエンティティを受け取ると共に、DB定義生成機能、処理生成機能、画面生成機能の要求に応じエンティティを出力するエンティティ記憶手段を用意する機能と、
    業務ルール編集機能から業務ルールを受け取ると共に、DB定義生成機能、処理生成機能、画面生成機能の要求に応じ業務ルールを出力する業務ルール記憶手段を用意する機能と、
    アクティビティ編集機能からアクティビティを受け取ると共に、処理生成機能、画面生成機能の要求に応じ業務用語と識別子、拡張情報を出力するアクティビティ記憶手段を用意する機能と、
    各編集機能の編集結果によって設計情報になされた変更の差分を記憶し、DB定義生成機能、処理生成機能、画面生成機能の要求に応じ差分情報を出力する差分記憶手段とを用意する機能、
    プログラムのテンプレートを記憶し、DB定義生成機能、処理生成機能、画面生成機能からの要求に応じ情報を返却するテンプレート記憶手段を用意する機能と、
    DB定義生成機能が生成したプログラムを記憶するDB表プログラム記憶手段を用意する機能と、
    処理生成機能が生成したプログラムを記憶する処理プログラム記憶手段を用意する機能と、
    画面生成機能が生成したプログラムを記憶する画面プログラム記憶手段を用意する機能と、
    開発者の操作により業務用語の追加・削除・更新を行い、業務用語記憶手段に記憶させると共に、差分記憶手段に用語の差分を格納する業務用語編集機能と、
    開発者の操作により、設計情報の一種であるエンティティの追加・削除・更新を行い、エンティティ記憶手段に記憶させると共に、差分記憶手段にエンティティの差分を格納するエンティティ編集機能と、
    開発者の操作により、設計情報の一種である業務ルールの追加・削除・更新を行い、業務ルール記憶手段に記憶させると共に、差分記憶手段に業務ルールの差分を格納する業務ルール編集機能と、
    開発者の操作により、設計情報の一種であるアクティビティの追加・削除・更新を行い、アクティビティ記憶手段に記憶させると共に、差分記憶手段にアクティビティの差分を格納するアクティビティ編集機能と、
    テンプレート記憶手段から取得したDB定義パラメータ情報に基づき、業務用語記憶手段から取得した業務用語情報と、エンティティ記憶手段、業務ルール記憶手段から取得した各設計情報を元に、DB表プログラムを生成し、DB表プログラム記憶手段に格納するDB定義生成機能と、
    テンプレート記憶手段から取得した処理パラメータ情報に基づき、業務用語記憶手段から取得した業務用語情報と、エンティティ記憶手段、業務ルール記憶手段、アクティビティ記憶手段から取得した各設計情報を元に、処理プログラムを生成し、処理プログラム記憶手段に格納する処理生成機能と、
    テンプレート記憶手段から取得した画面パラメータ情報に基づき、業務用語記憶手段から取得した業務用語情報と、エンティティ記憶手段、業務ルール記憶手段、アクティビティ記憶手段から取得した各設計情報を元に、画面プログラムを生成し、画面プログラム記憶手段に格納する画面生成機能と、
    テンプレート記憶手段から、識別子を使用するか、拡張情報を使用するか、拡張情報を使用する場合はどの拡張情報を使用するかを記述するパラメータ情報を抽出するパラメータ抽出機能と、
    テンプレートのパラメータ情報に基づき、差分記憶手段から識別子を取得する識別子取得機能と、
    テンプレートのパラメータ情報に基づき、差分記憶手段から拡張情報を取得する拡張情報取得機能とをコンピュータに実現させ、
    各記憶手段について編集前後の差分を差分記憶手段に保持し、前記識別子取得機能及び拡張情報取得機能において差分記憶手段から取得した情報を前記テンプレート記憶手段において記録したテンプレートに埋め込むことによりプログラムを生成するようにコンピュータを動作させることを特徴とするプログラム生成プログラム。
JP2004038343A 2004-02-16 2004-02-16 プログラム生成システム及び方法とそのプログラム Expired - Fee Related JP4120879B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004038343A JP4120879B2 (ja) 2004-02-16 2004-02-16 プログラム生成システム及び方法とそのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004038343A JP4120879B2 (ja) 2004-02-16 2004-02-16 プログラム生成システム及び方法とそのプログラム

Publications (2)

Publication Number Publication Date
JP2005228235A JP2005228235A (ja) 2005-08-25
JP4120879B2 true JP4120879B2 (ja) 2008-07-16

Family

ID=35002876

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004038343A Expired - Fee Related JP4120879B2 (ja) 2004-02-16 2004-02-16 プログラム生成システム及び方法とそのプログラム

Country Status (1)

Country Link
JP (1) JP4120879B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014153783A (ja) * 2013-02-05 2014-08-25 Fuji Electric Co Ltd オブジェクト指向プログラム生成装置、オブジェクト指向プログラム生成方法およびオブジェクト指向プログラム生成用プログラム

Also Published As

Publication number Publication date
JP2005228235A (ja) 2005-08-25

Similar Documents

Publication Publication Date Title
US8799299B2 (en) Schema contracts for data integration
JP6626823B2 (ja) サブグラフから構成されるデータフローグラフ用のインターフェースの管理
US7765464B2 (en) Method and system for dynamically assembling presentations of web pages
US20030110472A1 (en) Method and system for generating program source code of a computer application from an information model
US8756407B2 (en) Configuration rule prototyping tool
CN101271390A (zh) 修改xml数据结构的软件、系统和方法
CN109116828B (zh) 一种控制器中模型代码配置方法和装置
Neubauer et al. XMLText: from XML schema to Xtext
WO2023078053A1 (zh) 一种代码生成方法、装置、计算机设备及存储介质
CN107294750A (zh) 一种云集群能自识别的分布配置管理方法和装置
US20010052111A1 (en) Management of application programming interface interoperability
CN114489950A (zh) 一种组件适配方法、装置、电子设备及存储介质
JP6588988B2 (ja) 業務プログラム生成支援システムおよび業務プログラム生成支援方法
JP4724387B2 (ja) プログラム変換プログラム、プログラム変換装置およびプログラム変換方法
JP2008225898A (ja) 変換装置、変換プログラム及び変換方法
US7716653B2 (en) Configurable importers and resource writers for converting data into another format
JP4120879B2 (ja) プログラム生成システム及び方法とそのプログラム
US11861329B2 (en) Method and apparatus for codifying user experience designs and managing the codified user experience designs
Le Zou et al. On synchronizing with web service evolution
JP7059757B2 (ja) Api処理方法、端末、api処理プログラム
Kraas Realizing Model Simplifications with QVT Operational Mappings.
JP2005228234A (ja) サービス情報生成方法及び実施システム並びに処理プログラム
Ellison et al. Towards Platform Independent Database Modelling in Enterprise Systems
Kraas On the automated derivation of domain-specific UML profiles
JP2003162533A (ja) スキーマ統合変換システム、スキーマ統合変換方法およびスキーマ統合変換用プログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070730

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071001

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080124

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080313

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080416

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

Free format text: PAYMENT UNTIL: 20110509

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110509

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120509

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120509

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130509

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20140509

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees