JPH08171486A - データ項目部品を利用するプログラム開発支援装置 - Google Patents
データ項目部品を利用するプログラム開発支援装置Info
- Publication number
- JPH08171486A JPH08171486A JP31467794A JP31467794A JPH08171486A JP H08171486 A JPH08171486 A JP H08171486A JP 31467794 A JP31467794 A JP 31467794A JP 31467794 A JP31467794 A JP 31467794A JP H08171486 A JPH08171486 A JP H08171486A
- Authority
- JP
- Japan
- Prior art keywords
- data item
- program
- definition
- data
- name
- 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.)
- Granted
Links
Landscapes
- Stored Programmes (AREA)
Abstract
(57)【要約】
【目的】データ項目部品を使用してプログラム仕様書及
びプログラム自動生成を行うことによってソフトウェア
の生産性及び信頼性を向上する。 【構成】標準データ項目辞書から必要な内容を複写しデ
ータ項目辞書を自動生成する機能と、データ定義書とデ
ータ項目辞書からデータ定義書単位の条件表を生成する
機能と、データ項目辞書および関連チェック定義書から
プログラム仕様書を生成する機能と、生成されたプログ
ラム仕様書を基に標準パターンライブラリに格納された
プログラムスケルトン部品とソフトウェア部品とを合成
してソースプログラムを生成する機能と、プログラム仕
様書を編集する機能と、プログラム仕様書から逆にソフ
トウェア部品を変更する機能とからなる。
びプログラム自動生成を行うことによってソフトウェア
の生産性及び信頼性を向上する。 【構成】標準データ項目辞書から必要な内容を複写しデ
ータ項目辞書を自動生成する機能と、データ定義書とデ
ータ項目辞書からデータ定義書単位の条件表を生成する
機能と、データ項目辞書および関連チェック定義書から
プログラム仕様書を生成する機能と、生成されたプログ
ラム仕様書を基に標準パターンライブラリに格納された
プログラムスケルトン部品とソフトウェア部品とを合成
してソースプログラムを生成する機能と、プログラム仕
様書を編集する機能と、プログラム仕様書から逆にソフ
トウェア部品を変更する機能とからなる。
Description
【0001】
【産業上の利用分野】本発明は、データ項目単位に部品
化したデータ項目辞書を自動生成し、このデータ項目辞
書を用いてプログラム仕様書を自動生成し、プログラム
仕様書からプログラムを自動生成するプログラム開発支
援装置に関するものである。
化したデータ項目辞書を自動生成し、このデータ項目辞
書を用いてプログラム仕様書を自動生成し、プログラム
仕様書からプログラムを自動生成するプログラム開発支
援装置に関するものである。
【0002】
【従来の技術】ソフトウェア生産性を向上するための有
力な方法のひとつに既存のソフトウェアを再利用して新
規ソフトウェアを開発する方法がある。この既存のソフ
トウェアを再利用して新規ソフトウェアを開発する場
合、業務システムのレベルやプログラムのレベルで再利
用を行い、プログラマが既存ソフトウェアの仕様を記述
したドキュメントやソースプログラムを解析し、修正を
行うのが一般的である。しかし同種業務のソフトウェア
においても利用者によってその要求仕様はまちまちであ
り、上記のような再利用の方法ではドキュメントやソー
スプログラムからだけでは修正箇所を特定することが難
しく、ひとつのソフトウェアに対し複数利用者の要求仕
様の相違に伴う修正が加わっていくためソフトウェア保
守性が悪くなるなどの欠点があった。
力な方法のひとつに既存のソフトウェアを再利用して新
規ソフトウェアを開発する方法がある。この既存のソフ
トウェアを再利用して新規ソフトウェアを開発する場
合、業務システムのレベルやプログラムのレベルで再利
用を行い、プログラマが既存ソフトウェアの仕様を記述
したドキュメントやソースプログラムを解析し、修正を
行うのが一般的である。しかし同種業務のソフトウェア
においても利用者によってその要求仕様はまちまちであ
り、上記のような再利用の方法ではドキュメントやソー
スプログラムからだけでは修正箇所を特定することが難
しく、ひとつのソフトウェアに対し複数利用者の要求仕
様の相違に伴う修正が加わっていくためソフトウェア保
守性が悪くなるなどの欠点があった。
【0003】このような欠点があるために同種業務のソ
フトウェア開発においてさえ既存ソフトウェアの再利用
を断念し、全く新規にソフトウェアを開発することが多
く、生産性向上を妨げていた。
フトウェア開発においてさえ既存ソフトウェアの再利用
を断念し、全く新規にソフトウェアを開発することが多
く、生産性向上を妨げていた。
【0004】この問題を解決するひとつの方法として、
ソフトウェアをその機能に着目して細分化することによ
り部品化しておき、このソフトウェア部品とプログラム
との対応づけを定義することにより新たなプログラムを
自動生成する方法がある。この方法によりソフトウェア
を小規模な部品群に分割し、新規ソフトウェアを開発す
る際に既存ソフトウェアを部品レベルで再利用すること
が可能となり、ソフトウェアの適用業務の違いや要求仕
様の違いに対して部品の取捨選択、変更、追加により対
応することができるようになった。
ソフトウェアをその機能に着目して細分化することによ
り部品化しておき、このソフトウェア部品とプログラム
との対応づけを定義することにより新たなプログラムを
自動生成する方法がある。この方法によりソフトウェア
を小規模な部品群に分割し、新規ソフトウェアを開発す
る際に既存ソフトウェアを部品レベルで再利用すること
が可能となり、ソフトウェアの適用業務の違いや要求仕
様の違いに対して部品の取捨選択、変更、追加により対
応することができるようになった。
【0005】なおこの種の技術として関連するものに
は、例えば日立評論VOL.66(1984年3月)
P.19〜P.24「システム開発支援ソフトウェア”
EAGLE”」などがある。
は、例えば日立評論VOL.66(1984年3月)
P.19〜P.24「システム開発支援ソフトウェア”
EAGLE”」などがある。
【0006】
【発明が解決しようとする課題】従来の技術によれば、
既存のソフトウェアをソフトウェア部品として管理し、
新しいソフトウェアの開発の際にこのソフトウェア部品
を再利用することが可能となった。しかしこのようなソ
フトウェア部品の標準化が進むに従って個々のユーザの
多様な要求に合致するソフトウェア部品を用意すること
が困難になってきた。またプログラム仕様書の作成作業
の方は、ソフトウェア部品を利用するソースプログラム
の生成とは独立した人間の手作業によるものであった。
従ってプログラム仕様書を変更したときこれに連動して
関連するソースプログラムを変更することが困難であっ
た。またプログラム仕様書及びソースプログラムが仕様
の誤りや定義不良を含んでいてもプログラム仕様書とソ
ースプログラムだけからこのような不良を設計段階で検
出することは容易でなく、プログラムがプログラム仕様
書通りに動作するか否かのチェックを行う検査工程にな
らないと不良を発見できない場合が多かった。
既存のソフトウェアをソフトウェア部品として管理し、
新しいソフトウェアの開発の際にこのソフトウェア部品
を再利用することが可能となった。しかしこのようなソ
フトウェア部品の標準化が進むに従って個々のユーザの
多様な要求に合致するソフトウェア部品を用意すること
が困難になってきた。またプログラム仕様書の作成作業
の方は、ソフトウェア部品を利用するソースプログラム
の生成とは独立した人間の手作業によるものであった。
従ってプログラム仕様書を変更したときこれに連動して
関連するソースプログラムを変更することが困難であっ
た。またプログラム仕様書及びソースプログラムが仕様
の誤りや定義不良を含んでいてもプログラム仕様書とソ
ースプログラムだけからこのような不良を設計段階で検
出することは容易でなく、プログラムがプログラム仕様
書通りに動作するか否かのチェックを行う検査工程にな
らないと不良を発見できない場合が多かった。
【0007】本発明の第1の目的は、個々のユーザの要
求に合致するような形でソフトウェア部品を再利用する
とともに、ソフトウェア部品を基にしてプログラム仕様
書を生成し、このプログラム仕様書を基にしてプログラ
ムを生成するようなプログラム開発支援装置を提供する
ことにある。
求に合致するような形でソフトウェア部品を再利用する
とともに、ソフトウェア部品を基にしてプログラム仕様
書を生成し、このプログラム仕様書を基にしてプログラ
ムを生成するようなプログラム開発支援装置を提供する
ことにある。
【0008】本発明の第2の目的は、プログラム仕様書
を変更したときこの変更に伴って関連するソフトウェア
部品を変更するようなプログラム開発支援装置を提供す
ることにある。
を変更したときこの変更に伴って関連するソフトウェア
部品を変更するようなプログラム開発支援装置を提供す
ることにある。
【0009】本発明の第3の目的は、ソフトウェア部品
とプログラム仕様とを関連付けるようなチェックリスト
を生成して設計段階での不良検出を容易にするようなプ
ログラム開発支援装置を提供することにある。
とプログラム仕様とを関連付けるようなチェックリスト
を生成して設計段階での不良検出を容易にするようなプ
ログラム開発支援装置を提供することにある。
【0010】
【課題を解決するための手段】本発明の開発支援装置
は、基本的にデータ項目辞書の生成手段と、プログラム
仕様書の生成手段と、プログラムの生成手段とから構成
される。データ項目辞書生成手段は、標準データ項目辞
書とデータ項目日本語名称テーブルとから実際の業務プ
ログラムに使用することを目的とするデータ項目辞書を
生成する。ここで標準データ項目辞書は、データ項目に
ついてその日本語名称、チェック処理、入力編集処理及
び出力編集処理を標準化して定義するソフトウェア部品
をデータ項目部品とし、このようなデータ項目部品を集
めたものである。またデータ項目日本語名称テーブル
は、標準化された日本語名称とその修飾語とから構成さ
れるデータ項目日本語名称を集めたものである。データ
項目辞書生成手段は、標準化された日本語名称を基にし
て標準データ項目辞書を検索して対応するデータ項目部
品を選択し、実際の業務に使用するデータ項目名称をも
ち、標準化された処理を取り込んだデータ項目部品を生
成して辞書に格納する。またプログラム仕様書生成手段
は、プログラム定義書、データ定義書及びユーザのデー
タ項目辞書からプログラム仕様書を生成する。ここでプ
ログラム定義書は、業務プログラムの名称とこのプログ
ラムが使用するファイルを定義するものである。データ
定義書は、このファイルに格納されるレコードのデータ
構成を定義するものである。プログラム仕様書生成手段
は、プログラム定義書とデータ定義書とから業務プログ
ラムが使用するファイルについてこのファイルを構成す
るレコードとレコードを構成するデータ項目を取得し、
データ項目辞書から関連するデータ項目部品を取り出し
てプログラム仕様書を作成する。プログラム生成手段
は、この業務プログラムのスケルトンとなる標準的なプ
ログラムパターンにプログラム仕様書及びデータ定義書
から得られたプログラム名称、ファイル定義、レコード
定義及び各データ項目の属性と処理手続きを埋め込んで
目的のソースプログラムを作成する。
は、基本的にデータ項目辞書の生成手段と、プログラム
仕様書の生成手段と、プログラムの生成手段とから構成
される。データ項目辞書生成手段は、標準データ項目辞
書とデータ項目日本語名称テーブルとから実際の業務プ
ログラムに使用することを目的とするデータ項目辞書を
生成する。ここで標準データ項目辞書は、データ項目に
ついてその日本語名称、チェック処理、入力編集処理及
び出力編集処理を標準化して定義するソフトウェア部品
をデータ項目部品とし、このようなデータ項目部品を集
めたものである。またデータ項目日本語名称テーブル
は、標準化された日本語名称とその修飾語とから構成さ
れるデータ項目日本語名称を集めたものである。データ
項目辞書生成手段は、標準化された日本語名称を基にし
て標準データ項目辞書を検索して対応するデータ項目部
品を選択し、実際の業務に使用するデータ項目名称をも
ち、標準化された処理を取り込んだデータ項目部品を生
成して辞書に格納する。またプログラム仕様書生成手段
は、プログラム定義書、データ定義書及びユーザのデー
タ項目辞書からプログラム仕様書を生成する。ここでプ
ログラム定義書は、業務プログラムの名称とこのプログ
ラムが使用するファイルを定義するものである。データ
定義書は、このファイルに格納されるレコードのデータ
構成を定義するものである。プログラム仕様書生成手段
は、プログラム定義書とデータ定義書とから業務プログ
ラムが使用するファイルについてこのファイルを構成す
るレコードとレコードを構成するデータ項目を取得し、
データ項目辞書から関連するデータ項目部品を取り出し
てプログラム仕様書を作成する。プログラム生成手段
は、この業務プログラムのスケルトンとなる標準的なプ
ログラムパターンにプログラム仕様書及びデータ定義書
から得られたプログラム名称、ファイル定義、レコード
定義及び各データ項目の属性と処理手続きを埋め込んで
目的のソースプログラムを作成する。
【0011】また本発明の開発支援装置は、生成された
プログラム仕様書に対する変更、追加、削除などの修正
を可能とする手段と、さらにここで修正されたプログラ
ム仕様書を基にしてデータ項目辞書、プログラム定義書
及びデータ定義書を逆生成する手段をもつことを特徴と
する。
プログラム仕様書に対する変更、追加、削除などの修正
を可能とする手段と、さらにここで修正されたプログラ
ム仕様書を基にしてデータ項目辞書、プログラム定義書
及びデータ定義書を逆生成する手段をもつことを特徴と
する。
【0012】さらに本発明の開発支援装置は、データ項
目辞書とデータ定義書に定義されているデータ項目情報
を基にデータ項目部品を選択し、データ定義書に定義さ
れたデータ項目ごとにチェック条件表を生成する手段を
持つことを特徴とする。
目辞書とデータ定義書に定義されているデータ項目情報
を基にデータ項目部品を選択し、データ定義書に定義さ
れたデータ項目ごとにチェック条件表を生成する手段を
持つことを特徴とする。
【0013】
【作用】データ項目辞書生成手段は、標準データ項目辞
書に格納されているデータ項目部品をできる限り再利用
するとともにそのデータ項目名称をユーザ固有の業務に
よく適合する名称に変更することを可能にする。プログ
ラム定義書とデータ定義書とから業務プログラムが使用
するデータ項目が定まるから、そのデータ項目名称を基
にしてデータ項目辞書から必要なデータ項目部品を取り
出すことによってプログラム仕様書を生成するためのソ
フトウェア部品についての情報が取得される。またプロ
グラム仕様書が作成されれば、業務プログラムに適合す
るプログラムスケルトンとなるプログラムの標準パター
ンを選択することによって、この標準パターンに得られ
たソフトウェア部品を埋め込んでソースプログラムが生
成される。
書に格納されているデータ項目部品をできる限り再利用
するとともにそのデータ項目名称をユーザ固有の業務に
よく適合する名称に変更することを可能にする。プログ
ラム定義書とデータ定義書とから業務プログラムが使用
するデータ項目が定まるから、そのデータ項目名称を基
にしてデータ項目辞書から必要なデータ項目部品を取り
出すことによってプログラム仕様書を生成するためのソ
フトウェア部品についての情報が取得される。またプロ
グラム仕様書が作成されれば、業務プログラムに適合す
るプログラムスケルトンとなるプログラムの標準パター
ンを選択することによって、この標準パターンに得られ
たソフトウェア部品を埋め込んでソースプログラムが生
成される。
【0014】
【実施例】以下、本発明の一実施例について図面を用い
て詳細に説明する。
て詳細に説明する。
【0015】(1)概略説明 図1は本実施例の開発支援装置のハードウェア構成を示
す図である。装置群A(108)は、プログラム仕様書
とソースプログラムの生成、生成したプログラム仕様書
の修正及び修正されたプログラム仕様書からプログラム
仕様書の生成元情報であるソフトウェア部品の更新を行
うための装置群である。修正されたプログラム仕様書か
らソフトウェア部品を更新する処理を以下逆生成と呼
ぶ。また装置群B(118)は、プログラム仕様書の修
正を装置群A(108)と異なる装置群上で行う場合に
使用する。装置群B(118)としては、いわゆるパー
ソナルコンピュータやワークステーションを用いること
が望ましい。また装置群A(108)に対し装置群B
(118)を複数組使用することも可能であるし、逆に
装置群B(118)なしで本発明にかかる機能や操作を
すべて装置群A(108)を使って行うことも可能であ
る。
す図である。装置群A(108)は、プログラム仕様書
とソースプログラムの生成、生成したプログラム仕様書
の修正及び修正されたプログラム仕様書からプログラム
仕様書の生成元情報であるソフトウェア部品の更新を行
うための装置群である。修正されたプログラム仕様書か
らソフトウェア部品を更新する処理を以下逆生成と呼
ぶ。また装置群B(118)は、プログラム仕様書の修
正を装置群A(108)と異なる装置群上で行う場合に
使用する。装置群B(118)としては、いわゆるパー
ソナルコンピュータやワークステーションを用いること
が望ましい。また装置群A(108)に対し装置群B
(118)を複数組使用することも可能であるし、逆に
装置群B(118)なしで本発明にかかる機能や操作を
すべて装置群A(108)を使って行うことも可能であ
る。
【0016】まず装置群A(108)について図1に従
って説明する。CPU103はシステムの中心となる演
算処理装置であり、CPU103には生成の実行を指令
するための入力を行ったり生成されたプログラム仕様書
を編集する際のデータ入力を行うための入力装置10
5、生成されたプログラム仕様書のデータなどを表示す
るための表示装置104及び生成されたプログラム仕様
書を出力するためのプリンタ102が入出力機器として
接続される。またCPU103にはプログラム仕様書生
成時にその生成元となるソフトウェア部品及び生成後の
プログラム仕様書やソースプログラムを格納するための
外部記憶装置106と、以下に説明する処理を行うプロ
グラムやデータを格納するためのメモリ101とが接続
される。外部記憶装置106は、以下に説明するデータ
項目日本語テーブル201、標準データ項目辞書項目辞
書202、知識ベース203、ユーザ仕様情報204、
メッセージファイル206、データ項目辞書207、関
連チェック定義書208、データ定義書209、プログ
ラム定義書210、標準パターンライブラリ211、標
準機能説明ライブラリ212、プログラム仕様書ライブ
ラリ217及びソースプログラムライブラリ218の各
ファイルを格納する。更に装置群B(118)を使用す
る場合には、生成されたプログラム仕様書を装置群B
(118)へ送信したりあるいは装置群B(118)で
編集されたプログラム仕様書を受信したりするための通
信装置107がCPU103に接続される。
って説明する。CPU103はシステムの中心となる演
算処理装置であり、CPU103には生成の実行を指令
するための入力を行ったり生成されたプログラム仕様書
を編集する際のデータ入力を行うための入力装置10
5、生成されたプログラム仕様書のデータなどを表示す
るための表示装置104及び生成されたプログラム仕様
書を出力するためのプリンタ102が入出力機器として
接続される。またCPU103にはプログラム仕様書生
成時にその生成元となるソフトウェア部品及び生成後の
プログラム仕様書やソースプログラムを格納するための
外部記憶装置106と、以下に説明する処理を行うプロ
グラムやデータを格納するためのメモリ101とが接続
される。外部記憶装置106は、以下に説明するデータ
項目日本語テーブル201、標準データ項目辞書項目辞
書202、知識ベース203、ユーザ仕様情報204、
メッセージファイル206、データ項目辞書207、関
連チェック定義書208、データ定義書209、プログ
ラム定義書210、標準パターンライブラリ211、標
準機能説明ライブラリ212、プログラム仕様書ライブ
ラリ217及びソースプログラムライブラリ218の各
ファイルを格納する。更に装置群B(118)を使用す
る場合には、生成されたプログラム仕様書を装置群B
(118)へ送信したりあるいは装置群B(118)で
編集されたプログラム仕様書を受信したりするための通
信装置107がCPU103に接続される。
【0017】装置群B(118)の各装置は、装置群A
(108)の対応する装置と同じ機能をもつ。ただし外
部記憶装置116にはプログラム仕様書ライブラリ21
7のみが格納される。
(108)の対応する装置と同じ機能をもつ。ただし外
部記憶装置116にはプログラム仕様書ライブラリ21
7のみが格納される。
【0018】図2は、本実施例の開発支援装置の機能的
なブロック図であり、装置群A(108)が行う処理と
取り扱うファイルの概略を示す図である。処理部として
データ項目辞書生成205、条件表生成213、プログ
ラム仕様書生成214、プログラム生成216、プログ
ラム仕様書編集221及びソフトウェア部品逆生成21
5の6つの処理部があり、これらの処理はメモリ101
に格納されたプログラムに基づいてCPU103によっ
て実行される。
なブロック図であり、装置群A(108)が行う処理と
取り扱うファイルの概略を示す図である。処理部として
データ項目辞書生成205、条件表生成213、プログ
ラム仕様書生成214、プログラム生成216、プログ
ラム仕様書編集221及びソフトウェア部品逆生成21
5の6つの処理部があり、これらの処理はメモリ101
に格納されたプログラムに基づいてCPU103によっ
て実行される。
【0019】データ項目辞書生成205は、外部記憶装
置106上にあるデータ項目日本語テーブル201、標
準データ項目辞書202、知識ベース203及びユーザ
仕様情報204を入力し、データ項目辞書207を生成
して外部記憶装置106に格納する。
置106上にあるデータ項目日本語テーブル201、標
準データ項目辞書202、知識ベース203及びユーザ
仕様情報204を入力し、データ項目辞書207を生成
して外部記憶装置106に格納する。
【0020】条件表生成213は、外部記憶装置106
上にあるデータ項目辞書207及びデータ定義書209
を入力し、条件表219を生成してプリンタ102から
出力する。
上にあるデータ項目辞書207及びデータ定義書209
を入力し、条件表219を生成してプリンタ102から
出力する。
【0021】プログラム仕様書生成214は、外部記憶
装置106上にあるデータ項目辞書207、関連チェッ
ク定義書208、データ定義書209、プログラム定義
書210及び標準機能説明ライブラリ212を入力し、
プログラム仕様書220を生成して外部記憶装置106
上にあるプログラム仕様書ライブラリ217に格納した
り、あるいはプリンタ102から出力する。
装置106上にあるデータ項目辞書207、関連チェッ
ク定義書208、データ定義書209、プログラム定義
書210及び標準機能説明ライブラリ212を入力し、
プログラム仕様書220を生成して外部記憶装置106
上にあるプログラム仕様書ライブラリ217に格納した
り、あるいはプリンタ102から出力する。
【0022】プログラム生成216は、外部記憶装置1
06上にあるプログラム仕様書ライブラリ217、デー
タ定義書209及び標準パターンライブラリ211を入
力し、ソースプログラムを生成して外部記憶装置106
上にあるソースプログラムライブラリ218に格納す
る。
06上にあるプログラム仕様書ライブラリ217、デー
タ定義書209及び標準パターンライブラリ211を入
力し、ソースプログラムを生成して外部記憶装置106
上にあるソースプログラムライブラリ218に格納す
る。
【0023】プログラム仕様書編集221は、入力装置
105及び表示装置104を介してプログラム仕様書ラ
イブラリ217中のプログラム仕様書220を編集し、
編集されたプログラム仕様書220をプログラム仕様書
ライブラリ217に格納するとともにプリンタ102に
出力する。
105及び表示装置104を介してプログラム仕様書ラ
イブラリ217中のプログラム仕様書220を編集し、
編集されたプログラム仕様書220をプログラム仕様書
ライブラリ217に格納するとともにプリンタ102に
出力する。
【0024】装置群B(118)上でプログラム仕様書
編集221を動作させることもできる。この場合、装置
群A(108)のプログラム仕様書ライブラリ217を
装置群A(108)の外部記憶装置106から装置群B
(118)の外部記憶装置116に転送し、装置群B
(118)は、表示装置114や入力装置115を用い
て外部記憶装置116上にあるプログラム仕様書ライブ
ラリ217の編集を行い、編集されたプログラム仕様書
220をプリンタ112に出力する。さらに装置群B
(118)で編集したプログラム仕様書ライブラリ21
7を再び装置群A(108)の外部記憶装置116上に
転送し、装置群A(108)でプログラム生成216や
次に述べるソフトウェア部品逆生成215を行うことが
できる。なお専用のエディタを用いてプログラム仕様書
編集221を実行してもよいし、既存の汎用ソフトウェ
ア、例えば表計算用ソフトウェアや文書作成用ソフトウ
ェア等を用いて実行してもよい。
編集221を動作させることもできる。この場合、装置
群A(108)のプログラム仕様書ライブラリ217を
装置群A(108)の外部記憶装置106から装置群B
(118)の外部記憶装置116に転送し、装置群B
(118)は、表示装置114や入力装置115を用い
て外部記憶装置116上にあるプログラム仕様書ライブ
ラリ217の編集を行い、編集されたプログラム仕様書
220をプリンタ112に出力する。さらに装置群B
(118)で編集したプログラム仕様書ライブラリ21
7を再び装置群A(108)の外部記憶装置116上に
転送し、装置群A(108)でプログラム生成216や
次に述べるソフトウェア部品逆生成215を行うことが
できる。なお専用のエディタを用いてプログラム仕様書
編集221を実行してもよいし、既存の汎用ソフトウェ
ア、例えば表計算用ソフトウェアや文書作成用ソフトウ
ェア等を用いて実行してもよい。
【0025】ソフトウェア部品逆生成215は、外部記
憶装置106上にあるプログラム仕様書ライブラリ21
7を入力し、必要に応じて外部記憶装置106上にある
データ項目辞書207、関連チェック定義書208、デ
ータ定義書209及びプログラム定義書210の中に格
納されたソフトウェア部品を更新する。
憶装置106上にあるプログラム仕様書ライブラリ21
7を入力し、必要に応じて外部記憶装置106上にある
データ項目辞書207、関連チェック定義書208、デ
ータ定義書209及びプログラム定義書210の中に格
納されたソフトウェア部品を更新する。
【0026】本実施例では、プログラム仕様書220
は、プログラム処理概要図(図39)、プログラム機能
説明図(図40)、プログラム単位のチェック条件表
(図41)、関連チェック条件表(図42)及びプログ
ラム単位の編集条件表(図43)の5種類の仕様書より
構成される。しかしこれ以外にファイル仕様書、レコー
ド仕様書、帳票仕様書、画面仕様書、データベース仕様
書、サブルーチン接続仕様書、他装置上の資源やプロセ
スへのアクセス仕様書等対象となるプログラムに関連す
るドキュメントを従来の技術で出力できる。
は、プログラム処理概要図(図39)、プログラム機能
説明図(図40)、プログラム単位のチェック条件表
(図41)、関連チェック条件表(図42)及びプログ
ラム単位の編集条件表(図43)の5種類の仕様書より
構成される。しかしこれ以外にファイル仕様書、レコー
ド仕様書、帳票仕様書、画面仕様書、データベース仕様
書、サブルーチン接続仕様書、他装置上の資源やプロセ
スへのアクセス仕様書等対象となるプログラムに関連す
るドキュメントを従来の技術で出力できる。
【0027】(2)データ項目辞書生成 本実施例のデータ項目辞書生成205の具体的な手順の
説明に先立ち、データ項目辞書207、データ項目日本
語名称テーブル201、標準データ項目辞書202及び
メッセージファイル206について説明する。
説明に先立ち、データ項目辞書207、データ項目日本
語名称テーブル201、標準データ項目辞書202及び
メッセージファイル206について説明する。
【0028】図11〜図15は、データ項目辞書207
のデータ構成を事例によって示す図である。データ項目
辞書とは、データ項目単位に各データ項目にについての
単独の処理を定義し、ソフトウェア部品として利用でき
るようにしたものである。ここでデータ項目とは、氏
名、生年月日など業務上意味を持つ最小単位のデータを
指す。単独の処理とは、該データ項目に対してのみ行う
操作であり、それ自身以外のデータ項目に関与しない処
理のことである。本例では「SIMEI−NO」(図1
1)、「SIMEI」(図12)、「NYUSYA−Y
MD」(図13)、「SYOKUI−CD」(図1
4)、「SIKYU−GK」(図15)というデータ項
目に対する定義例を示している。
のデータ構成を事例によって示す図である。データ項目
辞書とは、データ項目単位に各データ項目にについての
単独の処理を定義し、ソフトウェア部品として利用でき
るようにしたものである。ここでデータ項目とは、氏
名、生年月日など業務上意味を持つ最小単位のデータを
指す。単独の処理とは、該データ項目に対してのみ行う
操作であり、それ自身以外のデータ項目に関与しない処
理のことである。本例では「SIMEI−NO」(図1
1)、「SIMEI」(図12)、「NYUSYA−Y
MD」(図13)、「SYOKUI−CD」(図1
4)、「SIKYU−GK」(図15)というデータ項
目に対する定義例を示している。
【0029】データ項目辞書207の各ソフトウェア部
品は、データ項目定義部901、チェック処理定義部9
06、入力編集定義部907及び出力編集定義部908
から構成される。ここでチェック処理は、入力帳票や入
力画面からの入力に対しデータの形式及びデータの妥当
性をチェックする処理であり、入力編集は入力されたデ
ータをデータベースやファイルに格納する形式に変換す
る処理であり、出力編集はデータベースやファイル上の
データを出力帳票や出力画面に出力する形式に変換する
処理である。
品は、データ項目定義部901、チェック処理定義部9
06、入力編集定義部907及び出力編集定義部908
から構成される。ここでチェック処理は、入力帳票や入
力画面からの入力に対しデータの形式及びデータの妥当
性をチェックする処理であり、入力編集は入力されたデ
ータをデータベースやファイルに格納する形式に変換す
る処理であり、出力編集はデータベースやファイル上の
データを出力帳票や出力画面に出力する形式に変換する
処理である。
【0030】データ項目定義部901は、データ項目
名、日本語名、属性及びデータ項目の用途や意味を記述
するコメントから構成され、属性はデータの形式及び桁
数から構成される。図11の例では、902はデータ項
目名が「SIMEI−NO」であり、903は日本語名
が「氏名番号」であり、904はデータの属性が数字の
9桁であることを定義し、905はデータ項目のもつ意
味を定義している。チェック処理定義部906は、デー
タが不当であると判断するための条件と不当であること
をユーザに知らせる際に用いるエラーコード及びエラー
メッセージを定義する。図11の例では、条件909は
本データ項目に関する入力に対しサブルーチン「SUB
01」を呼び出すことによってチェックを行うことを、
910はエラーであった時のエラーコードが「ER1
0」であり、911はエラーメッセージが「氏名番号が
正しくありません」であることを定義している。
名、日本語名、属性及びデータ項目の用途や意味を記述
するコメントから構成され、属性はデータの形式及び桁
数から構成される。図11の例では、902はデータ項
目名が「SIMEI−NO」であり、903は日本語名
が「氏名番号」であり、904はデータの属性が数字の
9桁であることを定義し、905はデータ項目のもつ意
味を定義している。チェック処理定義部906は、デー
タが不当であると判断するための条件と不当であること
をユーザに知らせる際に用いるエラーコード及びエラー
メッセージを定義する。図11の例では、条件909は
本データ項目に関する入力に対しサブルーチン「SUB
01」を呼び出すことによってチェックを行うことを、
910はエラーであった時のエラーコードが「ER1
0」であり、911はエラーメッセージが「氏名番号が
正しくありません」であることを定義している。
【0031】図12は、入力編集定義部907の事例を
説明する図である。本例では914に「SUB(SUB
02),SIMEI−NO」と記述することにより、本
データ項目に関する入力編集をサブルーチン「SUB0
2」を呼び出すことにより行うことを定義している。図
13は、出力編集定義部908の事例を説明する図であ
る。本例では917に「DATE」と記述することによ
り、本データ項目に関する出力編集を行う際には出力形
式を「YY.MM.DD」(YY:年、MM:月、D
D:日)に変換して出力することを定義している。図1
4は、チェック処理定義部906の他の事例を示す図で
ある。また図15もチェック処理定義部906の他の事
例を示す図である。
説明する図である。本例では914に「SUB(SUB
02),SIMEI−NO」と記述することにより、本
データ項目に関する入力編集をサブルーチン「SUB0
2」を呼び出すことにより行うことを定義している。図
13は、出力編集定義部908の事例を説明する図であ
る。本例では917に「DATE」と記述することによ
り、本データ項目に関する出力編集を行う際には出力形
式を「YY.MM.DD」(YY:年、MM:月、D
D:日)に変換して出力することを定義している。図1
4は、チェック処理定義部906の他の事例を示す図で
ある。また図15もチェック処理定義部906の他の事
例を示す図である。
【0032】以上のように、チェック条件、入力編集及
び出力編集の定義には「SUB」や「DATE」等のキ
ーワードを用いて記述する。キーワードとは、チェック
条件の場合はサブルーチン呼出し、数字チェック、英数
字チェック、範囲チェック等、編集方法の場合は、サブ
ルーチン呼出し、計算式、文字列連結編集等のいくつか
の一般的なソフトウェア部品を表す文字列とその文法規
則のことである。
び出力編集の定義には「SUB」や「DATE」等のキ
ーワードを用いて記述する。キーワードとは、チェック
条件の場合はサブルーチン呼出し、数字チェック、英数
字チェック、範囲チェック等、編集方法の場合は、サブ
ルーチン呼出し、計算式、文字列連結編集等のいくつか
の一般的なソフトウェア部品を表す文字列とその文法規
則のことである。
【0033】図16は、標準データ項目辞書202の事
例を示す図である。標準データ項目辞書における「デー
タの標準化」とは、システムの開発及び運用においてデ
ータを共有資源として扱うことを可能とするために、対
象とするデータを規定することである。そのためにデー
タ項目定義部901ではデータ項目に意味解釈における
一貫性を持たせられるようにデータ項目の日本語名称の
付け方に基準を設け、命名方法を確立している。またチ
ェック処理、入力編集及び出力編集の各処理定義部90
6,907,908では、データ項目がアプリケーショ
ン、システム構成、システムソフトウェア、企業組織等
の影響を受けないように特定のアプリケーション等とは
無関係にデータそのものに必要な処理を定義する。
例を示す図である。標準データ項目辞書における「デー
タの標準化」とは、システムの開発及び運用においてデ
ータを共有資源として扱うことを可能とするために、対
象とするデータを規定することである。そのためにデー
タ項目定義部901ではデータ項目に意味解釈における
一貫性を持たせられるようにデータ項目の日本語名称の
付け方に基準を設け、命名方法を確立している。またチ
ェック処理、入力編集及び出力編集の各処理定義部90
6,907,908では、データ項目がアプリケーショ
ン、システム構成、システムソフトウェア、企業組織等
の影響を受けないように特定のアプリケーション等とは
無関係にデータそのものに必要な処理を定義する。
【0034】ここでデータ項目定義部901におけるデ
ータ項目の名称の付け方の基準について説明を行う。デ
ータに一貫性を持たせられるような命名とは、データの
重複を抑制し、類似のデータからの識別及びデータの意
味内容を容易に認識できるような命名法である。これを
実現する名称基準として、データ項目の語構成を「実体
名称−属性名称−ドメイン名称」とする方法を採用す
る。実体とは、実世界に存在し、人間が認識可能な概念
である。属性とは、実体が持つ特性であり、実体がどの
ようなものであるかを表すために修飾するものである。
ドメインとは、特定の規制によって規定される値であ
り、複数の属性によって共有できるものである。この名
称基準では、データ項目について実世界における実体が
持つ属性を特定の属性値集合に対応させ、その値を定義
することによってデータに一貫性を持たせる命名を行う
ことができる。例えば「従業員任用年月日」という項目
名の場合、実体の名称は「従業員」、属性の名称は「任
用」、ドメイン名称は「年月日」となる。これは「従業
員」という実体を「任用」という属性に着目してとらえ
た場合、「年月日」というドメインによって特定の値を
持つことを意味する。このようにデータ項目が持つ値は
ドメインに依拠するものであり、実体の属性を値として
特定するドメインの決定はデータ定義の最も基礎となる
ものである。
ータ項目の名称の付け方の基準について説明を行う。デ
ータに一貫性を持たせられるような命名とは、データの
重複を抑制し、類似のデータからの識別及びデータの意
味内容を容易に認識できるような命名法である。これを
実現する名称基準として、データ項目の語構成を「実体
名称−属性名称−ドメイン名称」とする方法を採用す
る。実体とは、実世界に存在し、人間が認識可能な概念
である。属性とは、実体が持つ特性であり、実体がどの
ようなものであるかを表すために修飾するものである。
ドメインとは、特定の規制によって規定される値であ
り、複数の属性によって共有できるものである。この名
称基準では、データ項目について実世界における実体が
持つ属性を特定の属性値集合に対応させ、その値を定義
することによってデータに一貫性を持たせる命名を行う
ことができる。例えば「従業員任用年月日」という項目
名の場合、実体の名称は「従業員」、属性の名称は「任
用」、ドメイン名称は「年月日」となる。これは「従業
員」という実体を「任用」という属性に着目してとらえ
た場合、「年月日」というドメインによって特定の値を
持つことを意味する。このようにデータ項目が持つ値は
ドメインに依拠するものであり、実体の属性を値として
特定するドメインの決定はデータ定義の最も基礎となる
ものである。
【0035】図16は、標準データ項目辞書202の中
の「年月日」というデータ項目の定義例を示すものであ
る。データ項目定義部901の1001はデータ項目記
号名称が「YMD」であり、1002は日本語名が「年
月日」であり、1003はデータの属性として、数字タ
イプの6桁であることを意味し、1004はデータ項目
の意味を記述している。
の「年月日」というデータ項目の定義例を示すものであ
る。データ項目定義部901の1001はデータ項目記
号名称が「YMD」であり、1002は日本語名が「年
月日」であり、1003はデータの属性として、数字タ
イプの6桁であることを意味し、1004はデータ項目
の意味を記述している。
【0036】チェック処理定義部906の1005はこ
のデータ項目が入力されたとき「実在日チェック」のサ
ブルーチンを呼び出すことによってチェックを行うこと
を、1006はエラーであった場合のエラーコードが
「ER01」であることを、1007はエラーメッセー
ジが「年月日が正しくありません」であることを各々定
義している。
のデータ項目が入力されたとき「実在日チェック」のサ
ブルーチンを呼び出すことによってチェックを行うこと
を、1006はエラーであった場合のエラーコードが
「ER01」であることを、1007はエラーメッセー
ジが「年月日が正しくありません」であることを各々定
義している。
【0037】入力編集定義部907の1008はこのデ
ータ項目が入力されたとき「年月日変換(和暦→西暦)」
のサブルーチンを呼び出すことによって入力された和暦
の年月日を西暦に変換する処理を行うことを定義してい
る。
ータ項目が入力されたとき「年月日変換(和暦→西暦)」
のサブルーチンを呼び出すことによって入力された和暦
の年月日を西暦に変換する処理を行うことを定義してい
る。
【0038】出力編集定義部908の1009は「年月
日編集(和暦変換編集)」のサブルーチンを呼び出すこと
によってデータベースやファイルに格納されている西暦
の年月日を和暦に変換する処理を行うことを定義してい
る。
日編集(和暦変換編集)」のサブルーチンを呼び出すこと
によってデータベースやファイルに格納されている西暦
の年月日を和暦に変換する処理を行うことを定義してい
る。
【0039】以上、標準データ項目辞書におけるチェッ
ク処理、入力編集及び出力編集の各処理定義部では、複
数の処理内容が定義され得る。これは実世界において同
一データであっても複数の形式、属性によって表される
ため、標準データ項目辞書の各処理定義部が複数の入出
力形態に対応する必要があるために複数の処理内容を定
義するのである。
ク処理、入力編集及び出力編集の各処理定義部では、複
数の処理内容が定義され得る。これは実世界において同
一データであっても複数の形式、属性によって表される
ため、標準データ項目辞書の各処理定義部が複数の入出
力形態に対応する必要があるために複数の処理内容を定
義するのである。
【0040】図17は、データ項目日本語名称テーブル
201の例を示す図である。データ項目日本語テーブル
は、データ項目辞書を生成する対象となるデータ項目に
ついて日本語名称を定義し、格納するものである。本例
では「従業員任用年月日」1101、「作業開始年月日
−和暦」1102、「従業員任用日付」1103、「市
民転入年月日」1104及び「住民転入転出年月日(今
月分)」1105の5つのデータ項目日本語名称が定義
されている。ここで「従業員任用」、「作業開始」、
「市民転入」などの用語は、標準的な日本語名「年月
日」又は「日付」を修飾する用語と考えることができ
る。
201の例を示す図である。データ項目日本語テーブル
は、データ項目辞書を生成する対象となるデータ項目に
ついて日本語名称を定義し、格納するものである。本例
では「従業員任用年月日」1101、「作業開始年月日
−和暦」1102、「従業員任用日付」1103、「市
民転入年月日」1104及び「住民転入転出年月日(今
月分)」1105の5つのデータ項目日本語名称が定義
されている。ここで「従業員任用」、「作業開始」、
「市民転入」などの用語は、標準的な日本語名「年月
日」又は「日付」を修飾する用語と考えることができ
る。
【0041】図3〜図5は、データ項目辞書の生成手順
を示すフローチャートである。まずデータ項目日本語名
称テーブル201から情報を入力する(ステップ30
1)。次に読み込んだデータ項目日本語テーブル201
に記述されている業務データ項目日本語名を標準データ
項目辞書202に定義されているデータ項目名に合わせ
るように編集する(ステップ302)。
を示すフローチャートである。まずデータ項目日本語名
称テーブル201から情報を入力する(ステップ30
1)。次に読み込んだデータ項目日本語テーブル201
に記述されている業務データ項目日本語名を標準データ
項目辞書202に定義されているデータ項目名に合わせ
るように編集する(ステップ302)。
【0042】図18は、業務データ項目名の編集ステッ
プ302で編集された検索用データ項目日本語名称テー
ブルの例である。このような業務データ項目名の編集処
理を行うのは、標準データ項目辞書の検索率を高めるた
めである。本例は図17のデータ項目日本語テーブルに
対する検索用データ項目日本語名称テーブルである。
「従業員任用年月日」1101、「従業員任用日付」1
103、「市民転入年月日」1104及び「住民転入転
出年月日(今月分)」1105の4項目では検索用デー
タ項目日本語名称とデータ項目日本語名称が同一であ
る。これは「従業員任用年月日」1101、「従業員任
用日付」1103、「市民転入年月日」1104及び
「住民転入転出年月日(今月分)」1105の4項目
は、行うべく編集処理がないためである。これに対して
「作業開始年月日−和暦」1102は、標準データ項目
辞書の表記法に合わせるように「作業開始年月日(和
暦)」1202に変換されている。これは『「−和暦」
を「(和暦)」に編集する』処理を行ったためである。
なおこれはほんの1例であり、この他にも検索用データ
項目日本語名称テーブル作成処理では、標準データ項目
辞書の検索を容易にするための処理を行う。
プ302で編集された検索用データ項目日本語名称テー
ブルの例である。このような業務データ項目名の編集処
理を行うのは、標準データ項目辞書の検索率を高めるた
めである。本例は図17のデータ項目日本語テーブルに
対する検索用データ項目日本語名称テーブルである。
「従業員任用年月日」1101、「従業員任用日付」1
103、「市民転入年月日」1104及び「住民転入転
出年月日(今月分)」1105の4項目では検索用デー
タ項目日本語名称とデータ項目日本語名称が同一であ
る。これは「従業員任用年月日」1101、「従業員任
用日付」1103、「市民転入年月日」1104及び
「住民転入転出年月日(今月分)」1105の4項目
は、行うべく編集処理がないためである。これに対して
「作業開始年月日−和暦」1102は、標準データ項目
辞書の表記法に合わせるように「作業開始年月日(和
暦)」1202に変換されている。これは『「−和暦」
を「(和暦)」に編集する』処理を行ったためである。
なおこれはほんの1例であり、この他にも検索用データ
項目日本語名称テーブル作成処理では、標準データ項目
辞書の検索を容易にするための処理を行う。
【0043】図3に戻って、ステップ303では検索用
データ項目日本語名称テーブルと標準データ項目辞書2
02を入力してデータ項目日本語名称テーブル201に
記述されている個々のデータ項目日本語名称をキーとし
て標準データ項目辞書203のデータ項目を検索する。
データ項目日本語名称テーブルと標準データ項目辞書2
02を入力してデータ項目日本語名称テーブル201に
記述されている個々のデータ項目日本語名称をキーとし
て標準データ項目辞書203のデータ項目を検索する。
【0044】図19は、標準データ項目辞書の検索方法
を説明する図である。図は検索用データ項目日本語名称
テーブル1201に記述されたデータ項目「従業員任用
年月日」1202に該当する標準データ項目辞書202
のデータ項目を検索する例である。検索用データ項目日
本語名称テーブルに定義された検索用データ項目日本語
名称1202と標準データ項目辞書に格納されている全
データ項目の日本語名称を語尾から1文字ずつ比較し、
完全に一致したデータ項目を検索する。検索した標準デ
ータ項目が複数あった場合には一致した文字列が最大長
の標準データ項目を検索結果とする。図19の例では検
索用入力日本語名称「従業員任用年月日」1202に対
して標準データ項目辞書202を検索した結果、末尾文
字列が一致する「日」1301、「月日」1302及び
「年月日」1303という3つの標準データ項目名13
04を検索する。そこで本例では一致した文字列が最も
長い「年月日」1303を最終的な検索結果となる。
を説明する図である。図は検索用データ項目日本語名称
テーブル1201に記述されたデータ項目「従業員任用
年月日」1202に該当する標準データ項目辞書202
のデータ項目を検索する例である。検索用データ項目日
本語名称テーブルに定義された検索用データ項目日本語
名称1202と標準データ項目辞書に格納されている全
データ項目の日本語名称を語尾から1文字ずつ比較し、
完全に一致したデータ項目を検索する。検索した標準デ
ータ項目が複数あった場合には一致した文字列が最大長
の標準データ項目を検索結果とする。図19の例では検
索用入力日本語名称「従業員任用年月日」1202に対
して標準データ項目辞書202を検索した結果、末尾文
字列が一致する「日」1301、「月日」1302及び
「年月日」1303という3つの標準データ項目名13
04を検索する。そこで本例では一致した文字列が最も
長い「年月日」1303を最終的な検索結果となる。
【0045】図3に戻ってステップ304では標準デー
タ項目辞書の検索結果を判定する。標準データ項目辞書
から該当する項目を検索した場合にはデータ項目辞書を
生成するステップ305を実行する。また標準データ項
目辞書に該当する項目を検索しなかった場合にはメッセ
ージ出力ステップ306を実行する。
タ項目辞書の検索結果を判定する。標準データ項目辞書
から該当する項目を検索した場合にはデータ項目辞書を
生成するステップ305を実行する。また標準データ項
目辞書に該当する項目を検索しなかった場合にはメッセ
ージ出力ステップ306を実行する。
【0046】ステップ305では検索用データ項目日本
語名称テーブル1201に記述されている検索用データ
項目日本語名称に対応するデータ項目日本語名称を取得
し、それをデータ項目日本語名称として定義するととも
に、検索した標準データ項目辞書の各データ項目につい
て日本語名称以外の内容をデータ項目辞書207の各デ
ータ項目に複写することによってデータ項目辞書207
を生成する。
語名称テーブル1201に記述されている検索用データ
項目日本語名称に対応するデータ項目日本語名称を取得
し、それをデータ項目日本語名称として定義するととも
に、検索した標準データ項目辞書の各データ項目につい
て日本語名称以外の内容をデータ項目辞書207の各デ
ータ項目に複写することによってデータ項目辞書207
を生成する。
【0047】図20は、データ項目日本語名称テーブル
201の「従業員任用年月日」1101について生成さ
れたデータ項目辞書207の例である。本例では標準デ
ータ項目辞書202から検索した「年月日」1303と
いう標準データ項目の各ソフトウェア部品の内容を「従
業員任用年月日」のデータ項目辞書の各ソフトウェア部
品へ複写することにより生成されている。図20の14
01は図16の1001を、1402は1003を、1
403は1004を、1404は1005を、1405
は1006を、1406は1007を、1407は10
08を、及び1408は1009を各々複写したもので
ある。
201の「従業員任用年月日」1101について生成さ
れたデータ項目辞書207の例である。本例では標準デ
ータ項目辞書202から検索した「年月日」1303と
いう標準データ項目の各ソフトウェア部品の内容を「従
業員任用年月日」のデータ項目辞書の各ソフトウェア部
品へ複写することにより生成されている。図20の14
01は図16の1001を、1402は1003を、1
403は1004を、1404は1005を、1405
は1006を、1406は1007を、1407は10
08を、及び1408は1009を各々複写したもので
ある。
【0048】なおデータ項目日本語名称テーブル201
には、データ項目の日本語名称以外の情報も定義するこ
とができる。半完成のデータ項目辞書を生成するために
必要最小限な情報は、データ項目の日本語名称である。
しかしそれ以外の情報をデータ項目日本語名称テーブル
に定義しておき、生成する半完成データ項目辞書に反映
することも容易である。
には、データ項目の日本語名称以外の情報も定義するこ
とができる。半完成のデータ項目辞書を生成するために
必要最小限な情報は、データ項目の日本語名称である。
しかしそれ以外の情報をデータ項目日本語名称テーブル
に定義しておき、生成する半完成データ項目辞書に反映
することも容易である。
【0049】図3に戻って、ステップ306では生成し
なかったデータ項目のデータ項目名とその理由をメッセ
ージファイル206に出力する。図21を用いてメッセ
ージファイル206を説明する。メッセージファイル
は、標準データ項目辞書202を検索した結果、該当す
る標準データ項目を検索できない、あるいはデータ項目
日本語名称テーブルに定義された名称が重複するなど正
常にデータ項目辞書が生成できなかったデータ項目につ
いて、そのデータ項目日本語名称と詳細な情報を出力す
るものである。図21は、図17に示すデータ項目日本
語名称テーブル201について標準データ項目辞書20
2を検索した結果、生成されたメッセージファイル20
6のレコードの例である。メッセージファイル206
は、メッセージID1501とメッセージ内容1502
の欄から構成される。図21の例では1503は、メッ
セージの内容に伴い付与したメッセージIDが「CPM
DG200」であることを、1504はメッセージ内容
が「データ項目『住民転入転出年月日(今月分)』は、
標準データ項目辞書から該当するデータ項目を検索でき
なかった」ということを各々意味している。
なかったデータ項目のデータ項目名とその理由をメッセ
ージファイル206に出力する。図21を用いてメッセ
ージファイル206を説明する。メッセージファイル
は、標準データ項目辞書202を検索した結果、該当す
る標準データ項目を検索できない、あるいはデータ項目
日本語名称テーブルに定義された名称が重複するなど正
常にデータ項目辞書が生成できなかったデータ項目につ
いて、そのデータ項目日本語名称と詳細な情報を出力す
るものである。図21は、図17に示すデータ項目日本
語名称テーブル201について標準データ項目辞書20
2を検索した結果、生成されたメッセージファイル20
6のレコードの例である。メッセージファイル206
は、メッセージID1501とメッセージ内容1502
の欄から構成される。図21の例では1503は、メッ
セージの内容に伴い付与したメッセージIDが「CPM
DG200」であることを、1504はメッセージ内容
が「データ項目『住民転入転出年月日(今月分)』は、
標準データ項目辞書から該当するデータ項目を検索でき
なかった」ということを各々意味している。
【0050】図3のステップ307では、入力したすべ
てのデータ項目日本語名についてデータ項目辞書を生成
したかどうかを判定し、作成していなければ標準データ
項目辞書の検索からデータ項目辞書の生成あるいはメッ
セージの生成に到る工程を繰り返し、作成しているなら
ば終了する。
てのデータ項目日本語名についてデータ項目辞書を生成
したかどうかを判定し、作成していなければ標準データ
項目辞書の検索からデータ項目辞書の生成あるいはメッ
セージの生成に到る工程を繰り返し、作成しているなら
ば終了する。
【0051】次に図3に示したデータ項目辞書の生成手
順のうち、標準データ項目辞書の検索及びデータ項目辞
書の生成に知識ベースを活用するときの手順について説
明する。この手順の説明に先立ち知識ベースについて詳
細に説明する。
順のうち、標準データ項目辞書の検索及びデータ項目辞
書の生成に知識ベースを活用するときの手順について説
明する。この手順の説明に先立ち知識ベースについて詳
細に説明する。
【0052】図22〜図24は、知識ベースの定義例を
示すものである。知識ベースとは、エキスパートシステ
ムを用いたシステム開発において使用するものであり、
本実施例では専門家が有する各データ項目に関する情報
及びデータ項目辞書を作成するときのノウハウを定義
し、格納するファイルである。知識ベースは、ルール制
御定義部1601、規則型ルール定義部1605及び事
実型ルール定義部1608から構成される。ここでルー
ル制御、規則型ルール及び事実型ルールを以下のように
定義する。
示すものである。知識ベースとは、エキスパートシステ
ムを用いたシステム開発において使用するものであり、
本実施例では専門家が有する各データ項目に関する情報
及びデータ項目辞書を作成するときのノウハウを定義
し、格納するファイルである。知識ベースは、ルール制
御定義部1601、規則型ルール定義部1605及び事
実型ルール定義部1608から構成される。ここでルー
ル制御、規則型ルール及び事実型ルールを以下のように
定義する。
【0053】ルール制御とは、複数のルールを効果的に
使用するためにその実行順序を制御することである。規
則型ルールとは、同一のデータ項目日本語名称であって
も特定の条件及び状況の下ではその意味及び処理方法が
異なるデータ項目について有識者が持つデータ項目に関
する情報を表現したものである。事実型ルールとは、個
々のデータ項目についての性質及び要素を表現したもの
である。本システムでは標準データ項目辞書を読み込
み、これを事実型ルール定義部に展開する。図22はル
ール制御定義部の定義例、図23は規則型ルール定義部
の定義例及び図24は事実型ルール定義部の定義例を各
々示している。
使用するためにその実行順序を制御することである。規
則型ルールとは、同一のデータ項目日本語名称であって
も特定の条件及び状況の下ではその意味及び処理方法が
異なるデータ項目について有識者が持つデータ項目に関
する情報を表現したものである。事実型ルールとは、個
々のデータ項目についての性質及び要素を表現したもの
である。本システムでは標準データ項目辞書を読み込
み、これを事実型ルール定義部に展開する。図22はル
ール制御定義部の定義例、図23は規則型ルール定義部
の定義例及び図24は事実型ルール定義部の定義例を各
々示している。
【0054】ルール制御定義部には「IF(ルール実行を
指示する名称) THEN(ルール名、優先度)」の形式で
ルール実行を指示する名称、ルール名及び実行する優先
度を定義する。実行する優先度は数字で定義し、大きい
ほど実行する優先度が高いことを意味する。この値によ
って各ルールの実行順序が決定する。図22の例では、
1602はルール実行を指示する名称が「start」
であり、1603はルール名が「入力項目読み込みルー
ル」であり、1604は実行する優先度が「100」で
あることを定義している。
指示する名称) THEN(ルール名、優先度)」の形式で
ルール実行を指示する名称、ルール名及び実行する優先
度を定義する。実行する優先度は数字で定義し、大きい
ほど実行する優先度が高いことを意味する。この値によ
って各ルールの実行順序が決定する。図22の例では、
1602はルール実行を指示する名称が「start」
であり、1603はルール名が「入力項目読み込みルー
ル」であり、1604は実行する優先度が「100」で
あることを定義している。
【0055】規則型ルール定義部には「IF(条件)
THEN(処理)」の形式で特定の条件あるいは状況と
データ項目の意味、チェック処理、入力編集処理、出力
編集処理等の関係を定義する。図23の例では、160
5は「年月日検索ルール」を表している。本ルール定義
においては、1606は「条件部」を、1607は「処
理」を各々意味する。「入力項目読み込みルール」及び
「検索項目出力ルール」についても同様である。
THEN(処理)」の形式で特定の条件あるいは状況と
データ項目の意味、チェック処理、入力編集処理、出力
編集処理等の関係を定義する。図23の例では、160
5は「年月日検索ルール」を表している。本ルール定義
においては、1606は「条件部」を、1607は「処
理」を各々意味する。「入力項目読み込みルール」及び
「検索項目出力ルール」についても同様である。
【0056】事実型ルール定義部にはデータ項目名称、
およびそのデータ、チェック処理、入力編集処理、出力
編集処理などの標準データ項目辞書の定義内容を展開
し、属性と属性値による表形式で定義する。図24の例
は、データ項目「年月日」1611、「受付年月日」1
619、「任用年月日」1623、「額」1627及び
「損害保険控除額」1628の定義例を示すものであ
る。データ項目「年月日」1610の定義では、161
2はクラスが「data」であることを、1613は日
本語名が「年月日」であることを、1614はタイプが
「数字」であることを、1615は長さが「8桁」であ
ることを、1616は同義語は「日付」であることを、
1617はチェック処理は「実在日チェック」であるこ
とを、及び1618は入力編集処理は「和暦西暦変換処
理」であることをそれぞれ定義している。
およびそのデータ、チェック処理、入力編集処理、出力
編集処理などの標準データ項目辞書の定義内容を展開
し、属性と属性値による表形式で定義する。図24の例
は、データ項目「年月日」1611、「受付年月日」1
619、「任用年月日」1623、「額」1627及び
「損害保険控除額」1628の定義例を示すものであ
る。データ項目「年月日」1610の定義では、161
2はクラスが「data」であることを、1613は日
本語名が「年月日」であることを、1614はタイプが
「数字」であることを、1615は長さが「8桁」であ
ることを、1616は同義語は「日付」であることを、
1617はチェック処理は「実在日チェック」であるこ
とを、及び1618は入力編集処理は「和暦西暦変換処
理」であることをそれぞれ定義している。
【0057】なお事実型ルール定義部では、個々のデー
タ項目をその概念による階層構造として表現することが
可能である。階層構造の認識は、定義内容の中の「クラ
ス」の値を判断することにより行う。「クラス」には上
位概念のデータ項目名を定義する。図24の例では、デ
ータ項目全体を表す最上位の定義部分1609があり、
その中の1項目として、「年月日」1610、「額」1
626が下位概念のデータ項目として位置付けているこ
とを、さらにデータ項目「年月日」1611の下位概念
であるデータ項目として、「受付年月日」1619と
「任用年月日」1623があることを表している。
「額」1627と「損害保険控除額」1628について
も同様の意味である。
タ項目をその概念による階層構造として表現することが
可能である。階層構造の認識は、定義内容の中の「クラ
ス」の値を判断することにより行う。「クラス」には上
位概念のデータ項目名を定義する。図24の例では、デ
ータ項目全体を表す最上位の定義部分1609があり、
その中の1項目として、「年月日」1610、「額」1
626が下位概念のデータ項目として位置付けているこ
とを、さらにデータ項目「年月日」1611の下位概念
であるデータ項目として、「受付年月日」1619と
「任用年月日」1623があることを表している。
「額」1627と「損害保険控除額」1628について
も同様の意味である。
【0058】さらに事実型ルール定義部は、上位概念の
データ項目から下位概念のデータ項目へ定義内容を継承
する仕組みを持つ。従って上位概念のデータ項目の定義
内容を下位概念のデータ項目で定義する必要がない。図
24の例では、「年月日」データ項目で定義したタイ
プ、長さ、同義語、チェック処理、入力編集処理の情報
はすべて「受付年月日」1619及び「任用年月日」1
623の各データ項目に継承される。またデータ項目
「受付年月日」1619では、入力編集処理における定
義内容が上位概念のデータ項目「年月日」1611と異
なる。このような場合は下位概念の定義内容が優先され
る。そのため図24の例ではデータ項目「受付年月日」
1619の入力編集処理における定義内容は「和暦編集
処理」1622である。
データ項目から下位概念のデータ項目へ定義内容を継承
する仕組みを持つ。従って上位概念のデータ項目の定義
内容を下位概念のデータ項目で定義する必要がない。図
24の例では、「年月日」データ項目で定義したタイ
プ、長さ、同義語、チェック処理、入力編集処理の情報
はすべて「受付年月日」1619及び「任用年月日」1
623の各データ項目に継承される。またデータ項目
「受付年月日」1619では、入力編集処理における定
義内容が上位概念のデータ項目「年月日」1611と異
なる。このような場合は下位概念の定義内容が優先され
る。そのため図24の例ではデータ項目「受付年月日」
1619の入力編集処理における定義内容は「和暦編集
処理」1622である。
【0059】以下に知識ベースを用いたデータ項目辞書
生成手順を図4のフローチャートを用いて詳細に説明す
る。図4は、図3のステップ303:標準データ項目辞
書検索及びステップ305:データ項目辞書の生成をそ
れぞれ知識ベースを活用するステップ308及びステッ
プ309に変更した以外は図3に示した実施例と同様で
ある。
生成手順を図4のフローチャートを用いて詳細に説明す
る。図4は、図3のステップ303:標準データ項目辞
書検索及びステップ305:データ項目辞書の生成をそ
れぞれ知識ベースを活用するステップ308及びステッ
プ309に変更した以外は図3に示した実施例と同様で
ある。
【0060】図4のステップ308は、図18に示す検
索用データ項目日本語テーブル1201、標準データ項
目辞書202及び知識ベース203を入力情報とし、検
索用データ項目日本語名称テーブル1201に記述され
ている個々の検索用データ項目日本語名称をキーとして
知識ベース203に格納された情報に基づいて標準デー
タ項目辞書202のデータ項目を検索する。
索用データ項目日本語テーブル1201、標準データ項
目辞書202及び知識ベース203を入力情報とし、検
索用データ項目日本語名称テーブル1201に記述され
ている個々の検索用データ項目日本語名称をキーとして
知識ベース203に格納された情報に基づいて標準デー
タ項目辞書202のデータ項目を検索する。
【0061】またステップ309は、データ項目日本語
名称テーブル201、標準データ項目辞書202及び知
識ベース203を入力情報とし、知識ベース203に格
納された情報に基づいてデータ項目辞書207の内容を
編集することにより、目的とするデータ項目辞書207
を生成する。なおこの他の処理ステップについては図3
の実施例と同様である。
名称テーブル201、標準データ項目辞書202及び知
識ベース203を入力情報とし、知識ベース203に格
納された情報に基づいてデータ項目辞書207の内容を
編集することにより、目的とするデータ項目辞書207
を生成する。なおこの他の処理ステップについては図3
の実施例と同様である。
【0062】図25を用いて知識ベースに基づいた標準
データ項目辞書検索ステップ308及びデータ項目辞書
生成ステップ309の仕組みについて説明する。
データ項目辞書検索ステップ308及びデータ項目辞書
生成ステップ309の仕組みについて説明する。
【0063】標準データ項目辞書検索ステップ308で
は「検索用データ項目日本語名称テーブルの読み込み処
理」、「標準データ項目辞書の検索処理」を行う。また
データ項目辞書生成ステップ309では「データ項目辞
書の生成」処理を行なう。これらの処理は、「ルール制
御定義部」1601、「規則型ルール定義部」1704
の命令を組合せることにより行われる。具体的には「ル
ール制御定義部」1601から「規則型ルール定義部」
1704へ実行指示を出し、これを受けて「規則型ルー
ル定義部」1704で該当するルールを実行することに
より、実際に「入力項目を読み込む」、「事実型定義部
を検索する」、「データ項目辞書を出力する」という各
処理が行われる。なお「ルール制御定義部」1601で
は優先度の高いルールから低いルールへと順次行う。図
25の例では「ルール制御定義部」1601の指示によ
る処理は黒い矢印で表現し、「規則型ルール定義部」1
704の指示による処理は斜線をつけた矢印で表現して
いる。
は「検索用データ項目日本語名称テーブルの読み込み処
理」、「標準データ項目辞書の検索処理」を行う。また
データ項目辞書生成ステップ309では「データ項目辞
書の生成」処理を行なう。これらの処理は、「ルール制
御定義部」1601、「規則型ルール定義部」1704
の命令を組合せることにより行われる。具体的には「ル
ール制御定義部」1601から「規則型ルール定義部」
1704へ実行指示を出し、これを受けて「規則型ルー
ル定義部」1704で該当するルールを実行することに
より、実際に「入力項目を読み込む」、「事実型定義部
を検索する」、「データ項目辞書を出力する」という各
処理が行われる。なお「ルール制御定義部」1601で
は優先度の高いルールから低いルールへと順次行う。図
25の例では「ルール制御定義部」1601の指示によ
る処理は黒い矢印で表現し、「規則型ルール定義部」1
704の指示による処理は斜線をつけた矢印で表現して
いる。
【0064】処理手順に従い、個々の処理について詳細
な説明を加えると、まず標準データ項目辞書検索ステッ
プ308の第1の処理として、「ルール制御定義部」1
601の「入力項目読み込みルール」1701の実行指
示により、「規則型ルール定義部」1704の「入力項
目読み込みルール」1705を実行し、検索用日本語名
称テーブルの読み込み処理を行う。本例では「従業員任
用日付」402を読み込む。
な説明を加えると、まず標準データ項目辞書検索ステッ
プ308の第1の処理として、「ルール制御定義部」1
601の「入力項目読み込みルール」1701の実行指
示により、「規則型ルール定義部」1704の「入力項
目読み込みルール」1705を実行し、検索用日本語名
称テーブルの読み込み処理を行う。本例では「従業員任
用日付」402を読み込む。
【0065】第2の処理として、「ルール制御定義部」
1601の「年月日検索ルール」1702の実行指示に
より、「規則型ルール定義部」1704の「年月日検索
ルール」1605を実行する。本例の「従業員任用日
付」は、ルールの条件部「データ項目日本語名称に『日
付』という文字列がある」1606の内容に合致する。
このため処理部「同義語が『日付』であるデータ項目を
検索する」1607を実行し、「事実型ルール定義部」
1707の各データ項目の内容(1611,1619,1
623,1627,1628)と比較する。その結果、デ
ータ項目「年月日」1610とこの性質を継承する「受
付年月日」1619「任用年月日」1623の3データ
項目を選択する。本例のようにルール内容と合致するデ
ータ項目を複数検索した場合には、データ項目日本語名
称が最も類似する「任用年月日」1623を検索結果と
する。
1601の「年月日検索ルール」1702の実行指示に
より、「規則型ルール定義部」1704の「年月日検索
ルール」1605を実行する。本例の「従業員任用日
付」は、ルールの条件部「データ項目日本語名称に『日
付』という文字列がある」1606の内容に合致する。
このため処理部「同義語が『日付』であるデータ項目を
検索する」1607を実行し、「事実型ルール定義部」
1707の各データ項目の内容(1611,1619,1
623,1627,1628)と比較する。その結果、デ
ータ項目「年月日」1610とこの性質を継承する「受
付年月日」1619「任用年月日」1623の3データ
項目を選択する。本例のようにルール内容と合致するデ
ータ項目を複数検索した場合には、データ項目日本語名
称が最も類似する「任用年月日」1623を検索結果と
する。
【0066】以上の結果に従い、データ項目辞書生成ス
テップ309の処理として「ルール制御定義部」160
1の「検索項目出力ルール」1703の実行指示により
「規則型ルール定義部」1704の「検索項目出力ルー
ル」1706を実行する。本例ではデータ定義部のデー
タ項目名1709が「従業員任用日付」である半完成の
データ項目辞書1708を生成する。
テップ309の処理として「ルール制御定義部」160
1の「検索項目出力ルール」1703の実行指示により
「規則型ルール定義部」1704の「検索項目出力ルー
ル」1706を実行する。本例ではデータ定義部のデー
タ項目名1709が「従業員任用日付」である半完成の
データ項目辞書1708を生成する。
【0067】以上述べたように図4の手順によるデータ
項目辞書の生成の実施例として知識ベースを用いて検索
を行うことができる。機械的に文字列の比較を行う検索
処理では「日付」という文字列を「年月日」という文字
列から検索することはできない。しかし本実施例による
と、知識ベースを用いることにより「『日付』と『年月
日』が同義である」ことを認識できるため、「日付」と
いう文字列は「年月日」という文字列から検索すること
が可能である。このようにデータ項目及びデータ項目辞
書についての情報、あるいはデータ項目辞書作成におけ
るノウハウを知識ベースに持たせ、これをデータ項目辞
書の生成に活用するため、品質の高いデータ項目辞書を
生成することが可能である。
項目辞書の生成の実施例として知識ベースを用いて検索
を行うことができる。機械的に文字列の比較を行う検索
処理では「日付」という文字列を「年月日」という文字
列から検索することはできない。しかし本実施例による
と、知識ベースを用いることにより「『日付』と『年月
日』が同義である」ことを認識できるため、「日付」と
いう文字列は「年月日」という文字列から検索すること
が可能である。このようにデータ項目及びデータ項目辞
書についての情報、あるいはデータ項目辞書作成におけ
るノウハウを知識ベースに持たせ、これをデータ項目辞
書の生成に活用するため、品質の高いデータ項目辞書を
生成することが可能である。
【0068】次に図4に示したデータ項目辞書の生成手
順のうち、標準データ項目辞書の検索及びデータ項目辞
書の生成にユーザ仕様の情報を取得する機能を追加した
手順について説明する。この説明に先立ち、ユーザ仕様
情報及びユーザ仕様情報を反映した知識ベースについて
詳細に説明する。
順のうち、標準データ項目辞書の検索及びデータ項目辞
書の生成にユーザ仕様の情報を取得する機能を追加した
手順について説明する。この説明に先立ち、ユーザ仕様
情報及びユーザ仕様情報を反映した知識ベースについて
詳細に説明する。
【0069】図26は、図2に示したデータ項目日本語
名称テーブル201に対応するユーザ仕様情報204の
レコードの定義例である。ユーザ仕様情報レコードは、
データ項目日本語名称テーブル201に定義された各々
のデータ項目について標準データ項目辞書とは異なるユ
ーザ特有の仕様情報を定義するものである。その内容
は、本来データ項目辞書に定義すべきデータ定義、チェ
ック処理及び入出力編集処理について日本語名称以外の
いかなる情報でも定義が可能である。1801はデータ
項目「従業員任用年月日」に対するユーザ仕様レコード
であり、1802は、データ項目名を「YYMMDD」
と定義し、1803は入力編集処理定義部を「期間算出
処理サブルーチン」と定義していることを各々示してい
る。また1804はデータ項目「市民転入年月日」につ
いてのユーザ仕様レコードであり、1805はコメント
に「自治体」を記述することにより「『自治体』業務の
データ項目である」という意味を持たせている。
名称テーブル201に対応するユーザ仕様情報204の
レコードの定義例である。ユーザ仕様情報レコードは、
データ項目日本語名称テーブル201に定義された各々
のデータ項目について標準データ項目辞書とは異なるユ
ーザ特有の仕様情報を定義するものである。その内容
は、本来データ項目辞書に定義すべきデータ定義、チェ
ック処理及び入出力編集処理について日本語名称以外の
いかなる情報でも定義が可能である。1801はデータ
項目「従業員任用年月日」に対するユーザ仕様レコード
であり、1802は、データ項目名を「YYMMDD」
と定義し、1803は入力編集処理定義部を「期間算出
処理サブルーチン」と定義していることを各々示してい
る。また1804はデータ項目「市民転入年月日」につ
いてのユーザ仕様レコードであり、1805はコメント
に「自治体」を記述することにより「『自治体』業務の
データ項目である」という意味を持たせている。
【0070】図27〜図29は、本実施例で使用する知
識ベースの例である。図29の事実型ルール定義部は、
データ項目の各処理定義部について、業務ごとに異なっ
た処理内容1901〜1910が定義されている。これ
は同一データ項目であってもそのデータ項目が使用され
る業務によって定義される処理内容が異なるためであ
る。図27〜図29の例では、データ項目「転入年月
日」の入力編集処理として1901は官公庁業務で使用
される場合には「半角⇔全角変換処理」が定義され、1
902は自治体業務で使用される場合には「年号コード
変換処理」が各々定義されていることを表している。同
様に出力編集処理として1903は官公庁業務で使用さ
れる場合には「年齢計算処理」が定義され、1904は
自治体業務で使用される場合には「和暦編集処理」が定
義され、1905は病院業務で使用される場合には「期
間算出処理」が定義されていることを表している。
識ベースの例である。図29の事実型ルール定義部は、
データ項目の各処理定義部について、業務ごとに異なっ
た処理内容1901〜1910が定義されている。これ
は同一データ項目であってもそのデータ項目が使用され
る業務によって定義される処理内容が異なるためであ
る。図27〜図29の例では、データ項目「転入年月
日」の入力編集処理として1901は官公庁業務で使用
される場合には「半角⇔全角変換処理」が定義され、1
902は自治体業務で使用される場合には「年号コード
変換処理」が各々定義されていることを表している。同
様に出力編集処理として1903は官公庁業務で使用さ
れる場合には「年齢計算処理」が定義され、1904は
自治体業務で使用される場合には「和暦編集処理」が定
義され、1905は病院業務で使用される場合には「期
間算出処理」が定義されていることを表している。
【0071】以下にユーザ仕様情報を用いたデータ項目
辞書の生成手順を図5のフローチャートを用いて詳細に
説明する。図5は、図4のステップ309のデータ項目
辞書の生成にユーザ仕様情報を活用する機能を追加して
ステップ310に変更した以外は図4に示した実施例と
同様である。
辞書の生成手順を図5のフローチャートを用いて詳細に
説明する。図5は、図4のステップ309のデータ項目
辞書の生成にユーザ仕様情報を活用する機能を追加して
ステップ310に変更した以外は図4に示した実施例と
同様である。
【0072】図5のステップ310は、図3及び図4の
実施例で述べてきた標準データ項目辞書202の他にユ
ーザ仕様情報204を入力情報としてデータ項目辞書2
07を生成するものである。基本的にデータ項目辞書の
生成は、標準データ項目辞書から検索したデータ項目の
データ項目名以外の定義内容を複写することにより行
う。これに加えて本ステップは、個々のデータ項目に関
してユーザ特有の仕様情報を持たせる場合にこれをユー
ザ仕様情報204に定義することにより、生成する標準
データ項目辞書の定義内容にユーザ仕様情報を反映する
ものである。なおこの他の処理ステップについては、図
3の実施例と同様である。以下の実施例は知識ベースを
利用しているが、必ずしも知識ベースに依存しなくとも
実現可能である。
実施例で述べてきた標準データ項目辞書202の他にユ
ーザ仕様情報204を入力情報としてデータ項目辞書2
07を生成するものである。基本的にデータ項目辞書の
生成は、標準データ項目辞書から検索したデータ項目の
データ項目名以外の定義内容を複写することにより行
う。これに加えて本ステップは、個々のデータ項目に関
してユーザ特有の仕様情報を持たせる場合にこれをユー
ザ仕様情報204に定義することにより、生成する標準
データ項目辞書の定義内容にユーザ仕様情報を反映する
ものである。なおこの他の処理ステップについては、図
3の実施例と同様である。以下の実施例は知識ベースを
利用しているが、必ずしも知識ベースに依存しなくとも
実現可能である。
【0073】図30は、データ項目「市民転入年月日」
について知識ベース及びユーザ仕様情報からデータ項目
辞書を生成する仕組みを説明する図である。図26のユ
ーザ仕様レコードは、そのデータ項目「市民転入年月
日」のコメント欄に「自治体」1805が定義されてい
る。これはこのデータ項目を「自治体業務」のデータ項
目として位置づけることを意味する。図30の例は、ユ
ーザ定義情報に業務名が定義されている場合に知識ベー
スを用いることにより適切な業務の定義内容を持つデー
タ項目辞書を生成する例である。
について知識ベース及びユーザ仕様情報からデータ項目
辞書を生成する仕組みを説明する図である。図26のユ
ーザ仕様レコードは、そのデータ項目「市民転入年月
日」のコメント欄に「自治体」1805が定義されてい
る。これはこのデータ項目を「自治体業務」のデータ項
目として位置づけることを意味する。図30の例は、ユ
ーザ定義情報に業務名が定義されている場合に知識ベー
スを用いることにより適切な業務の定義内容を持つデー
タ項目辞書を生成する例である。
【0074】データ項目辞書の生成は、「ユーザ仕様情
報の読み込み処理」、「業種別処理の検索処理」及び
「業種別処理の選択」という一連の処理から成る。その
手順は図25を用いて説明された実施例と同様に行われ
る。すなわち「ルール制御定義部」2001及び「規則
型ルール定義部」2005の命令を順に実行することに
より行われる。処理は、「ルール制御定義部」2001
から「規則型ルール定義部」2005へ実行指示を出
し、これを受けて「規則型ルール定義部」2005は該
当するルールを実行し、実際に「ユーザ仕様情報を読み
込む」、「業種別処理を検索する」及び「業種別処理を
選択する」という手順によって行われる。「ルール制御
定義部」2001が優先度の高いルールから低いルール
へと順次行うことも先の実施例の場合と同様である。図
30の例では「ルール制御定義部」2001の指示によ
る処理は黒い矢印で表現し、「規則型ルール定義部」2
005の指示による処理は斜線をつけた矢印で表現して
いる。
報の読み込み処理」、「業種別処理の検索処理」及び
「業種別処理の選択」という一連の処理から成る。その
手順は図25を用いて説明された実施例と同様に行われ
る。すなわち「ルール制御定義部」2001及び「規則
型ルール定義部」2005の命令を順に実行することに
より行われる。処理は、「ルール制御定義部」2001
から「規則型ルール定義部」2005へ実行指示を出
し、これを受けて「規則型ルール定義部」2005は該
当するルールを実行し、実際に「ユーザ仕様情報を読み
込む」、「業種別処理を検索する」及び「業種別処理を
選択する」という手順によって行われる。「ルール制御
定義部」2001が優先度の高いルールから低いルール
へと順次行うことも先の実施例の場合と同様である。図
30の例では「ルール制御定義部」2001の指示によ
る処理は黒い矢印で表現し、「規則型ルール定義部」2
005の指示による処理は斜線をつけた矢印で表現して
いる。
【0075】処理手順に従い、個々の処理について詳細
な説明を加えると、まず第1の処理として「ルール制御
定義部」2001の「ユーザ仕様情報読み込みルール」
2002の実行指示により「規則型ルール定義部」20
05の「ユーザ仕様情報読み込みルール」2006を実
行し、ユーザ仕様情報レコード204の読み込み処理を
行う。本例では「市民転入年月日」レコード1804を
読み込む。
な説明を加えると、まず第1の処理として「ルール制御
定義部」2001の「ユーザ仕様情報読み込みルール」
2002の実行指示により「規則型ルール定義部」20
05の「ユーザ仕様情報読み込みルール」2006を実
行し、ユーザ仕様情報レコード204の読み込み処理を
行う。本例では「市民転入年月日」レコード1804を
読み込む。
【0076】第2の処理として「ルール制御定義部」2
001の「業務別処理検索ルール」2003の実行指示
により「規則型ルール定義部」2005の「業務別処理
検索ルール」2007を実行する。本例の「転入年月
日」のユーザ仕様情報レコード1804にはルールの条
件部「コメントに『自治体』が定義されている」200
8に合致するため、処理部「業務名が『自治体』である
処理内容を検索する」2009を実行する。その結果、
事実型ルール定義部2011に含まれるデータ項目「転
入年月日」の定義内容と合致する処理内容として、入力
編集定義部では「年号コード変換処理」1902が選択
され、出力編集定義部では「和暦編集処理」1904が
選択される。
001の「業務別処理検索ルール」2003の実行指示
により「規則型ルール定義部」2005の「業務別処理
検索ルール」2007を実行する。本例の「転入年月
日」のユーザ仕様情報レコード1804にはルールの条
件部「コメントに『自治体』が定義されている」200
8に合致するため、処理部「業務名が『自治体』である
処理内容を検索する」2009を実行する。その結果、
事実型ルール定義部2011に含まれるデータ項目「転
入年月日」の定義内容と合致する処理内容として、入力
編集定義部では「年号コード変換処理」1902が選択
され、出力編集定義部では「和暦編集処理」1904が
選択される。
【0077】第3の処理として「ルール制御定義部」2
001の「業務処理選択ルール」2004の実行指示に
より「規則型ルール定義部」2005の「検索項目出力
ルール」2010を実行し、「市民転入年月日」のデー
タ項目辞書2012を生成する。この結果データ項目辞
書の入力及び出力の各編集処理定義部は、第2の処理で
検索した自治体業務処理2013,2014を含むよう
に生成される。
001の「業務処理選択ルール」2004の実行指示に
より「規則型ルール定義部」2005の「検索項目出力
ルール」2010を実行し、「市民転入年月日」のデー
タ項目辞書2012を生成する。この結果データ項目辞
書の入力及び出力の各編集処理定義部は、第2の処理で
検索した自治体業務処理2013,2014を含むよう
に生成される。
【0078】以上述べたように、図5の手順によるデー
タ項目辞書の生成の実施例としてユーザ仕様情報を反映
したデータ項目辞書を生成することができる。本実施例
によれば、データ項目辞書の生成は単純に標準データ項
目辞書の内容を複写するだけでなく、データ項目にユー
ザ特有の仕様あるいは意味を持たせることが可能であ
る。さらにユーザ仕様情報と知識ベースを組合せてデー
タ項目辞書の生成も可能である。
タ項目辞書の生成の実施例としてユーザ仕様情報を反映
したデータ項目辞書を生成することができる。本実施例
によれば、データ項目辞書の生成は単純に標準データ項
目辞書の内容を複写するだけでなく、データ項目にユー
ザ特有の仕様あるいは意味を持たせることが可能であ
る。さらにユーザ仕様情報と知識ベースを組合せてデー
タ項目辞書の生成も可能である。
【0079】(3)条件表生成 以下、条件表生成214の手順を説明するが、条件表生
成の手順の説明に先立ってデータ定義書209の説明を
行う。データ定義書は、ファイルや帳票の情報を定義し
た帳票定義部品、ファイル定義部品及びレコード定義部
品を格納するものである。以下これらの定義部品につい
て説明する。
成の手順の説明に先立ってデータ定義書209の説明を
行う。データ定義書は、ファイルや帳票の情報を定義し
た帳票定義部品、ファイル定義部品及びレコード定義部
品を格納するものである。以下これらの定義部品につい
て説明する。
【0080】図31(a)は、図10に示すプログラム
が出力する「給与リスト」806の帳票定義部品のデー
タ形式を示すものである。帳票定義部品には帳票属性定
義部2101と帳票レイアウト定義部2107とがあ
る。2102は帳票定義部品名が「KYLST」であ
り、2103は帳票名が「給与リスト」である事を定義
し、2104はプログラム内で使用する帳票記号名が
「KYUYO−LIST」であり、2105はレコード
長、2106は1ページあたりの明細行の印刷行数21
06を定義している。帳票レイアウト定義部2107に
は帳票の上にデータ項目を打ち出すときの開始行210
8、開始列2109、明細行の反復数2110、データ
項目名2111及び属性2112を定義する。
が出力する「給与リスト」806の帳票定義部品のデー
タ形式を示すものである。帳票定義部品には帳票属性定
義部2101と帳票レイアウト定義部2107とがあ
る。2102は帳票定義部品名が「KYLST」であ
り、2103は帳票名が「給与リスト」である事を定義
し、2104はプログラム内で使用する帳票記号名が
「KYUYO−LIST」であり、2105はレコード
長、2106は1ページあたりの明細行の印刷行数21
06を定義している。帳票レイアウト定義部2107に
は帳票の上にデータ項目を打ち出すときの開始行210
8、開始列2109、明細行の反復数2110、データ
項目名2111及び属性2112を定義する。
【0081】図31(b)は図10に示すプログラムが
出力する「エラーリスト」807についての帳票定義部
品であるが、内容は図31(a)と同様なので説明を省
略する。
出力する「エラーリスト」807についての帳票定義部
品であるが、内容は図31(a)と同様なので説明を省
略する。
【0082】図32は、図10に示すプログラムが取り
扱うファイル801及びそのレコードフォーマット80
5を定義するものである。2202はファイル定義部品
名が「KYFIL」であり、2203はファイル名が
「給与ファイル」であり、2204はプログラム内で使
用するファイル記号名が「KYUYO−FILE」であ
り、2205はこのファイルに対するレコードフォーマ
ットを定義したレコード定義部品名が「KYREC」で
あることを定義し、またファイルの属性としてレコード
長2206、ブロック長2207及びレコード形式22
08を定義している。
扱うファイル801及びそのレコードフォーマット80
5を定義するものである。2202はファイル定義部品
名が「KYFIL」であり、2203はファイル名が
「給与ファイル」であり、2204はプログラム内で使
用するファイル記号名が「KYUYO−FILE」であ
り、2205はこのファイルに対するレコードフォーマ
ットを定義したレコード定義部品名が「KYREC」で
あることを定義し、またファイルの属性としてレコード
長2206、ブロック長2207及びレコード形式22
08を定義している。
【0083】レコード定義部品は、レコード属性定義部
2209とレコードレイアウト定義部2212とで構成
され、2210はレコード定義部品名が「KYREC」
であり、2211はレコード名が「給与レコード」であ
ることを定義する。レコードレイアウト定義部2212
は、レベル番号2213、データ項目名2214及び属
性2215を定義する。
2209とレコードレイアウト定義部2212とで構成
され、2210はレコード定義部品名が「KYREC」
であり、2211はレコード名が「給与レコード」であ
ることを定義する。レコードレイアウト定義部2212
は、レベル番号2213、データ項目名2214及び属
性2215を定義する。
【0084】図6は、条件表生成の手順を示すフローチ
ャートである。まず生成対象のデータ定義書209の定
義部品を入力する(ステツプ401)。次に定義部品の
種別によりデータ定義書単位のチェック条件表の生成判
定を行なう(ステップ402)。定義部品の種別がファ
イル定義部品及びレコード定義部品の場合はデータ定義
書単位のチェック条件表の生成を行い、帳票定義部品の
場合は生成を行わない。またデータ定義書単位の編集条
件表は定義部品の種別に係わらず生成を行う。データ定
義書単位のチェック条件表の生成が必要と判断された場
合、入力した定義部品名を基にその定義部品で使用され
ているすべてのデータ項目について、データ項目ごとに
データ項目辞書を参照しながらデータ定義書単位のチェ
ック条件表を展開し出力する(ステップ403)。
ャートである。まず生成対象のデータ定義書209の定
義部品を入力する(ステツプ401)。次に定義部品の
種別によりデータ定義書単位のチェック条件表の生成判
定を行なう(ステップ402)。定義部品の種別がファ
イル定義部品及びレコード定義部品の場合はデータ定義
書単位のチェック条件表の生成を行い、帳票定義部品の
場合は生成を行わない。またデータ定義書単位の編集条
件表は定義部品の種別に係わらず生成を行う。データ定
義書単位のチェック条件表の生成が必要と判断された場
合、入力した定義部品名を基にその定義部品で使用され
ているすべてのデータ項目について、データ項目ごとに
データ項目辞書を参照しながらデータ定義書単位のチェ
ック条件表を展開し出力する(ステップ403)。
【0085】図33はデータ定義書単位のチェック条件
表の展開方法を説明する図である。入力した定義部品名
2302及びその日本語名2301には定義部品から取
得したファイル定義部品名とファイル名とを出力する。
入力項目の欄には該データ項目名及びその日本語名23
03をデータ項目辞書のデータ項目定義部901から取
得し、属性2304を入力した定義部品から取得して出
力する。チェック処理の欄には、データ項目辞書のチェ
ック処理定義部906に定義されている内容を基にキー
ワード2305、チェック条件2306、エラーコード
2307及びエラーメッセージ2308の欄に出力す
る。チェック条件欄については、データ項目辞書のデー
タ項目部品には編集方法がキーワードによって記述され
ているのでキーワードが示す意味を日本語に変換して出
力する。
表の展開方法を説明する図である。入力した定義部品名
2302及びその日本語名2301には定義部品から取
得したファイル定義部品名とファイル名とを出力する。
入力項目の欄には該データ項目名及びその日本語名23
03をデータ項目辞書のデータ項目定義部901から取
得し、属性2304を入力した定義部品から取得して出
力する。チェック処理の欄には、データ項目辞書のチェ
ック処理定義部906に定義されている内容を基にキー
ワード2305、チェック条件2306、エラーコード
2307及びエラーメッセージ2308の欄に出力す
る。チェック条件欄については、データ項目辞書のデー
タ項目部品には編集方法がキーワードによって記述され
ているのでキーワードが示す意味を日本語に変換して出
力する。
【0086】本例においては、まず入力する定義部品名
を「KYFIL」とし、これに対応するファイル定義部
品(図32(a))を参照して対応するレコード定義部
品名「KYREC」2205を取得する。さらに対応す
るレコード定義部品(図32(b))を入力し、定義さ
れているデータ項目の順に入力項目欄及びチェック処理
欄を展開し出力する。
を「KYFIL」とし、これに対応するファイル定義部
品(図32(a))を参照して対応するレコード定義部
品名「KYREC」2205を取得する。さらに対応す
るレコード定義部品(図32(b))を入力し、定義さ
れているデータ項目の順に入力項目欄及びチェック処理
欄を展開し出力する。
【0087】「KYREC」のレコードレイアウト定義
2212において、1番目に定義されているデータ項目
名2214は「SIMEI−NO」であるので、まず対
応するデータ項目辞書のデータ項目定義部(図11)を
参照し、データ項目の日本語名「氏名番号」903を取
得する。次にデータ項目辞書のチェック処理定義部から
条件909、エラーコード910及びエラーメッセージ
911を取得し出力する。条件「SUB(SUB0
1)」は、サブルーチン呼び出しを示すキーワードであ
り、SUB01は呼び出されるサブルーチンのプログラ
ム記号名を表している。そこでチェック条件欄2306
には、「サブルーチン(SUB01)を呼び出すことに
よりチェックする」とキーワードの示す意味を日本語に
展開し出力する(なお以後このようなキーワードの示す
意味を日本語に変換する処理をキーワード日本語変換と
呼ぶ)。以下レコードレイアウト定義2212の他のデ
ータ項目名2214に対し同じ手順を繰り返すことによ
ってデータ定義書単位のチェック条件表を生成する。
2212において、1番目に定義されているデータ項目
名2214は「SIMEI−NO」であるので、まず対
応するデータ項目辞書のデータ項目定義部(図11)を
参照し、データ項目の日本語名「氏名番号」903を取
得する。次にデータ項目辞書のチェック処理定義部から
条件909、エラーコード910及びエラーメッセージ
911を取得し出力する。条件「SUB(SUB0
1)」は、サブルーチン呼び出しを示すキーワードであ
り、SUB01は呼び出されるサブルーチンのプログラ
ム記号名を表している。そこでチェック条件欄2306
には、「サブルーチン(SUB01)を呼び出すことに
よりチェックする」とキーワードの示す意味を日本語に
展開し出力する(なお以後このようなキーワードの示す
意味を日本語に変換する処理をキーワード日本語変換と
呼ぶ)。以下レコードレイアウト定義2212の他のデ
ータ項目名2214に対し同じ手順を繰り返すことによ
ってデータ定義書単位のチェック条件表を生成する。
【0088】図6のステップ404では、入力した定義
部品を基にしてファイル定義部品、レコード定義部品及
び帳票定義部品を入力し、入力した定義部品で使用され
ているすべてのデータ項目についてデータ項目ごとにデ
ータ項目辞書のデータ項目部品を参照しながらデータ定
義書単位の編集条件表を展開する。
部品を基にしてファイル定義部品、レコード定義部品及
び帳票定義部品を入力し、入力した定義部品で使用され
ているすべてのデータ項目についてデータ項目ごとにデ
ータ項目辞書のデータ項目部品を参照しながらデータ定
義書単位の編集条件表を展開する。
【0089】図34は、データ定義書単位の編集条件表
の展開方法を説明する図である。入力した定義部品名2
402及びその日本語名2401には、入力した定義部
品から取得した媒体定義部品名とそれを基にして取得し
た日本語名とをそれぞれ出力する。出力項目の欄につい
ては、データ項目辞書の入力編集定義部907に定義さ
れている内容を出力する場合は、入力編集が定義されて
いるデータ項目辞書のデータ項目部品からデータ項目名
902、日本語名903と属性904を取得し、出力項
目名2403及び属性2404に出力する。入力項目欄
の2408及び2409については、出力項目を編集す
る際の情報元となる定義部品上のデータ項目についてデ
ータ項目名とそれを基にデータ項目辞書のデータ項目部
品から日本語名903と属性904を取得し出力する。
またデータ項目辞書の出力編集定義部908に定義され
ている内容を出力する場合は、出力項目の欄に出力編集
を行なった結果を出力する定義部品上のデータ項目につ
いてデータ項目名とそれを基にデータ項目辞書のデータ
項目部品から日本語名903と属性904を取得し、出
力項目名2403及び属性2404に出力する。入力項
目欄の2408及び2409については、出力編集が定
義されているデータ項目辞書のデータ項目部品からデー
タ項目名902、日本語名903と属性904を取得
し、入力項目名2408及び属性2409に出力する。
の展開方法を説明する図である。入力した定義部品名2
402及びその日本語名2401には、入力した定義部
品から取得した媒体定義部品名とそれを基にして取得し
た日本語名とをそれぞれ出力する。出力項目の欄につい
ては、データ項目辞書の入力編集定義部907に定義さ
れている内容を出力する場合は、入力編集が定義されて
いるデータ項目辞書のデータ項目部品からデータ項目名
902、日本語名903と属性904を取得し、出力項
目名2403及び属性2404に出力する。入力項目欄
の2408及び2409については、出力項目を編集す
る際の情報元となる定義部品上のデータ項目についてデ
ータ項目名とそれを基にデータ項目辞書のデータ項目部
品から日本語名903と属性904を取得し出力する。
またデータ項目辞書の出力編集定義部908に定義され
ている内容を出力する場合は、出力項目の欄に出力編集
を行なった結果を出力する定義部品上のデータ項目につ
いてデータ項目名とそれを基にデータ項目辞書のデータ
項目部品から日本語名903と属性904を取得し、出
力項目名2403及び属性2404に出力する。入力項
目欄の2408及び2409については、出力編集が定
義されているデータ項目辞書のデータ項目部品からデー
タ項目名902、日本語名903と属性904を取得
し、入力項目名2408及び属性2409に出力する。
【0090】編集の欄には、データ項目辞書の入力編集
定義部907及び出力編集定義部908に定義されてい
る内容を基にキーワード欄2405、編集方法欄240
6及び編集区分欄2407の出力をする。編集方法欄2
406については、データ項目辞書のデータ項目部品の
編集方法がキーワードによって記述されているので、キ
ーワード日本語変換を行い出力する。編集区分欄240
7には、編集方法がデータ項目辞書のデータ項目部品の
入力編集から展開されたものである場合は「入力編
集」、出力編集から展開されたものである場合は「出力
編集」と出力する。
定義部907及び出力編集定義部908に定義されてい
る内容を基にキーワード欄2405、編集方法欄240
6及び編集区分欄2407の出力をする。編集方法欄2
406については、データ項目辞書のデータ項目部品の
編集方法がキーワードによって記述されているので、キ
ーワード日本語変換を行い出力する。編集区分欄240
7には、編集方法がデータ項目辞書のデータ項目部品の
入力編集から展開されたものである場合は「入力編
集」、出力編集から展開されたものである場合は「出力
編集」と出力する。
【0091】ここでデータ項目辞書のデータ項目部品に
定義された編集方法を編集の欄2405及び2406へ
展開する際の判定条件について説明する。入力編集の編
集先となるデータ項目がデータ項目辞書のデータ項目部
品として定義されている場合には入力編集を展開する。
出力編集の編集先となるデータ項目が条件表の生成対象
であるデータ定義書の定義部品として定義されている場
合には出力編集を展開する。
定義された編集方法を編集の欄2405及び2406へ
展開する際の判定条件について説明する。入力編集の編
集先となるデータ項目がデータ項目辞書のデータ項目部
品として定義されている場合には入力編集を展開する。
出力編集の編集先となるデータ項目が条件表の生成対象
であるデータ定義書の定義部品として定義されている場
合には出力編集を展開する。
【0092】以下に本実施例におけるデータ定義書単位
の編集条件表の生成例について説明する。まず「KYF
IL」601を基にファイル定義部品(図32(a))
及びレコード定義部品(図32(b))を入力し、そこ
で定義されているデータ項目に着目する。データ項目名
2214の1番目に定義されているデータ項目は「KY
UYO−REC」であるがデータ項目辞書のデータ項目
部品には登録されていないため、入力編集時及び出力編
集時はこのデータ項目について何の加工も施さずに出力
することを示しており、出力項目名2403にはデータ
項目のみを出力し、編集方法欄2406には「そのまま
転送する」と出力し、その他には空白を出力する。
の編集条件表の生成例について説明する。まず「KYF
IL」601を基にファイル定義部品(図32(a))
及びレコード定義部品(図32(b))を入力し、そこ
で定義されているデータ項目に着目する。データ項目名
2214の1番目に定義されているデータ項目は「KY
UYO−REC」であるがデータ項目辞書のデータ項目
部品には登録されていないため、入力編集時及び出力編
集時はこのデータ項目について何の加工も施さずに出力
することを示しており、出力項目名2403にはデータ
項目のみを出力し、編集方法欄2406には「そのまま
転送する」と出力し、その他には空白を出力する。
【0093】データ項目名2214の2番目に定義され
ているデータ項目は「SIMEI−NO」であるので、
データ項目辞書のデータ項目部品(図11)からデータ
項目の日本語名「氏名番号」903を、レコード定義部
品から属性「9(4)」2215を取得し出力する。
「SIMEI−NO」の入力編集定義部及び出力編集定
義部を参照するがどちらにも何も定義されていない。こ
れは入力編集時及び出力編集時にこのデータ項目につい
て何の加工も施さずに出力することを示す。そこでキー
ワードは空白とし、編集方法欄2406には「そのまま
転送する」と出力する。なお本例ではデータ項目辞書の
出力編集定義部に何も定義されていないためこのように
入力編集のみを展開しているが、出力編集定義部が定義
されている場合には入力編集及び出力編集の両方をこの
順番に展開して出力する。
ているデータ項目は「SIMEI−NO」であるので、
データ項目辞書のデータ項目部品(図11)からデータ
項目の日本語名「氏名番号」903を、レコード定義部
品から属性「9(4)」2215を取得し出力する。
「SIMEI−NO」の入力編集定義部及び出力編集定
義部を参照するがどちらにも何も定義されていない。こ
れは入力編集時及び出力編集時にこのデータ項目につい
て何の加工も施さずに出力することを示す。そこでキー
ワードは空白とし、編集方法欄2406には「そのまま
転送する」と出力する。なお本例ではデータ項目辞書の
出力編集定義部に何も定義されていないためこのように
入力編集のみを展開しているが、出力編集定義部が定義
されている場合には入力編集及び出力編集の両方をこの
順番に展開して出力する。
【0094】データ項目名2214の3番目に定義され
ているデータ項目は「NYUSYA−YMD」であるの
で、データ項目辞書のデータ項目部品(図13)から
「入社年月日」を取得し、レコード定義部品から属性
「9(6)」2215を取得しそれぞれ出力項目欄24
03、2404に出力する。次にデータ項目辞書の出力
編集定義部を参照し、キーワード「DATE」917を
取得する。出力編集の編集結果の出力先の項目「NYU
SYA−YMD」がレコード定義部品に定義されている
ことから、出力編集の場合の展開条件を満たしている。
そこでキーワード欄2405及び編集方法欄2406に
はキーワードとキーワード日本語変換を行った「YY.
MM.DDの形式に変換する」とを出力し、入力項目欄
2408、2409には自身と同名の「NYUSYA−
YMD」とその属性をデータ項目辞書のデータ項目部品
から取得してそれぞれ出力する。データ項目名2214
の4番目に定義されたデータ項目「SYOKUI−C
D」については、「SIMEI−NO」の場合と同様に
展開する。データ項目名2214の5番目に定義された
データ項目「SIKYU−GK」については、「SIM
EI−NO」と同様にデータ項目辞書の入力編集定義部
にも出力編集定義部にも定義情報がないが、帳票定義部
品より取得された属性が「Z,ZZZ,ZZ9」909
であり、これはゼロサプレス及びカンマ編集を行うもの
であるのでこの場合は編集方法欄に「Z,ZZZ,ZZ
9の形式に編集する」と出力する(2406)。
ているデータ項目は「NYUSYA−YMD」であるの
で、データ項目辞書のデータ項目部品(図13)から
「入社年月日」を取得し、レコード定義部品から属性
「9(6)」2215を取得しそれぞれ出力項目欄24
03、2404に出力する。次にデータ項目辞書の出力
編集定義部を参照し、キーワード「DATE」917を
取得する。出力編集の編集結果の出力先の項目「NYU
SYA−YMD」がレコード定義部品に定義されている
ことから、出力編集の場合の展開条件を満たしている。
そこでキーワード欄2405及び編集方法欄2406に
はキーワードとキーワード日本語変換を行った「YY.
MM.DDの形式に変換する」とを出力し、入力項目欄
2408、2409には自身と同名の「NYUSYA−
YMD」とその属性をデータ項目辞書のデータ項目部品
から取得してそれぞれ出力する。データ項目名2214
の4番目に定義されたデータ項目「SYOKUI−C
D」については、「SIMEI−NO」の場合と同様に
展開する。データ項目名2214の5番目に定義された
データ項目「SIKYU−GK」については、「SIM
EI−NO」と同様にデータ項目辞書の入力編集定義部
にも出力編集定義部にも定義情報がないが、帳票定義部
品より取得された属性が「Z,ZZZ,ZZ9」909
であり、これはゼロサプレス及びカンマ編集を行うもの
であるのでこの場合は編集方法欄に「Z,ZZZ,ZZ
9の形式に編集する」と出力する(2406)。
【0095】(4)プログラム仕様書生成 以下にプログラム仕様書生成214の手順について説明
する。本発明の具体的な説明に先立って、関連チェック
定義書208、プログラム定義書210、標準パターン
ライブラリ211、標準機能説明ライブラリ212及び
各ライブラリに格納される定義部品について詳細に説明
する。なお図10は本発明の適用対象とする業務プログ
ラム例の概略図である。これは入力ファイル「KYFI
L」801を読み込み、データの妥当性のチェックを行
って、不当なデータは出力帳票「KYERR」804
に、正常データは出力帳票「KYLST」803にそれ
ぞれ編集して出力するというプログラムである。以後こ
のプログラム例を対象として本実施例の説明を行う。
する。本発明の具体的な説明に先立って、関連チェック
定義書208、プログラム定義書210、標準パターン
ライブラリ211、標準機能説明ライブラリ212及び
各ライブラリに格納される定義部品について詳細に説明
する。なお図10は本発明の適用対象とする業務プログ
ラム例の概略図である。これは入力ファイル「KYFI
L」801を読み込み、データの妥当性のチェックを行
って、不当なデータは出力帳票「KYERR」804
に、正常データは出力帳票「KYLST」803にそれ
ぞれ編集して出力するというプログラムである。以後こ
のプログラム例を対象として本実施例の説明を行う。
【0096】まず図35を用いて関連チェック定義書2
08に格納される関連チェック定義部品の説明を行う。
関連チェック定義部品は、複数のデータ項目間の関連チ
ェック処理のソフトウェア部品をデシジョンテーブルの
形式で定義したものである。本例は、データ項目「SI
KYU−GK」及び「SYOKUI−CD」についての
関連チェック定義部品の例である。2501は対象とな
るデータ項目名は「SIKYU−GK」であることを定
義しており、2502は関連するデータ項目名が「SY
OKUI−CD」であることを定義している。なお関連
するデータ項目名は2つ以上あっても良い。2503は
関連チェックの条件定義部であり、2507は関連チェ
ックのエラー処理定義部である。条件定義部2503に
はデータ項目名2504、条件2505及び関連マトリ
クス2506を定義する。エラー処理定義部2507に
はエラーコード2508、エラーメッセージ2509及
び関連マトリクス2510を定義する。条件2505
は、データ項目辞書のデータ項目部品と同様にキーワー
ドを用いて記述する。本例は「SIKYU−GKが80
000より大でなく、SYOKUI−CDが’A03’
より大である場合は、エラーコードはER50とし、エ
ラーメッセージは’支給額が基準以下です’である」こ
とと「SIKYU−GKが80000より大でありSY
OKUI−CDが’A03’より大でない場合は、エラ
ーコードはER60とし、エラーメッセージは’支給額
が基準を超えています’である」ということを定義して
いる。
08に格納される関連チェック定義部品の説明を行う。
関連チェック定義部品は、複数のデータ項目間の関連チ
ェック処理のソフトウェア部品をデシジョンテーブルの
形式で定義したものである。本例は、データ項目「SI
KYU−GK」及び「SYOKUI−CD」についての
関連チェック定義部品の例である。2501は対象とな
るデータ項目名は「SIKYU−GK」であることを定
義しており、2502は関連するデータ項目名が「SY
OKUI−CD」であることを定義している。なお関連
するデータ項目名は2つ以上あっても良い。2503は
関連チェックの条件定義部であり、2507は関連チェ
ックのエラー処理定義部である。条件定義部2503に
はデータ項目名2504、条件2505及び関連マトリ
クス2506を定義する。エラー処理定義部2507に
はエラーコード2508、エラーメッセージ2509及
び関連マトリクス2510を定義する。条件2505
は、データ項目辞書のデータ項目部品と同様にキーワー
ドを用いて記述する。本例は「SIKYU−GKが80
000より大でなく、SYOKUI−CDが’A03’
より大である場合は、エラーコードはER50とし、エ
ラーメッセージは’支給額が基準以下です’である」こ
とと「SIKYU−GKが80000より大でありSY
OKUI−CDが’A03’より大でない場合は、エラ
ーコードはER60とし、エラーメッセージは’支給額
が基準を超えています’である」ということを定義して
いる。
【0097】なお本実施例ではバッチ処理のプログラム
を例としており、データ定義書として上記の3種類を使
用しているが、ファイルや帳票の他に表示画面やデータ
ベースを使用するシステムにおいては画面定義部品、デ
ータベース定義部品を定義でき、またクライアント・サ
ーバモデル対応システムの場合には他装置上の資源やプ
ロセスへのアクセス定義部品等が同様に定義できる。
を例としており、データ定義書として上記の3種類を使
用しているが、ファイルや帳票の他に表示画面やデータ
ベースを使用するシステムにおいては画面定義部品、デ
ータベース定義部品を定義でき、またクライアント・サ
ーバモデル対応システムの場合には他装置上の資源やプ
ロセスへのアクセス定義部品等が同様に定義できる。
【0098】図37を用いて標準パターンライブラリ2
11の説明を行う。標準パターンライブラリ211は、
画面、帳票、ファイル等の処理プログラムを制御構造に
着目していくつかの種類に分け、業務個別処理をそれ自
身に含まないパターンとして部品化されたプログラムス
ケルトン標準パターン部品(以下、標準パターンと呼
ぶ)を格納したものである。本例は、ファイルを読み込
み、チェックを行って正常データとエラーデータに別け
て出力するタイプの標準パターンである。2701は標
準パターン名、2702は標準パターン本体であるプロ
グラムスケルトン部品である。チェック処理部270
3、関連チェック処理部2704及び編集処理部270
5は業務個別の処理であり、これらは標準パターンに含
まずプログラム生成216がデータ項目部品を展開する
部分である。
11の説明を行う。標準パターンライブラリ211は、
画面、帳票、ファイル等の処理プログラムを制御構造に
着目していくつかの種類に分け、業務個別処理をそれ自
身に含まないパターンとして部品化されたプログラムス
ケルトン標準パターン部品(以下、標準パターンと呼
ぶ)を格納したものである。本例は、ファイルを読み込
み、チェックを行って正常データとエラーデータに別け
て出力するタイプの標準パターンである。2701は標
準パターン名、2702は標準パターン本体であるプロ
グラムスケルトン部品である。チェック処理部270
3、関連チェック処理部2704及び編集処理部270
5は業務個別の処理であり、これらは標準パターンに含
まずプログラム生成216がデータ項目部品を展開する
部分である。
【0099】図38を用いて標準機能説明ライブラリ2
12の説明を行う。標準機能説明ライブラリとは、標準
パターンに沿った標準機能説明部品を格納したものであ
る。本例は、上記で説明した標準パターン「CHK0
1」に対応した標準機能説明部品である。2801は標
準機能説明部品名、2802は機能説明の処理部分の記
述である。なお標準機能説明部品と標準パターンとは1
対1対応がとれており、従って標準機能説明部品名28
01は対応する標準パターン名と同一名である。
12の説明を行う。標準機能説明ライブラリとは、標準
パターンに沿った標準機能説明部品を格納したものであ
る。本例は、上記で説明した標準パターン「CHK0
1」に対応した標準機能説明部品である。2801は標
準機能説明部品名、2802は機能説明の処理部分の記
述である。なお標準機能説明部品と標準パターンとは1
対1対応がとれており、従って標準機能説明部品名28
01は対応する標準パターン名と同一名である。
【0100】図36を用いて、プログラム定義書210
に格納されるプログラム定義部品の説明を行う。本例
は、図10のプログラム例におけるプログラム802の
プログラム仕様を定義したものである。2601はプロ
グラム属性定義部であり、2606は入出力媒体定義部
である。2602はプログラム記号名が「PROG0
1」であり、2603はプログラム日本語名が「給与リ
スト作成」であり、2604はプログラムで使用する標
準パターン名が「CHK01」である事を定義してい
る。2605はプログラム処理概要を定義する。入出力
媒体定義部2606は、入出力媒体に対応するファイル
定義部品名及び帳票定義部品名2607、それぞれの入
出力区分(以下、I/O区分とよぶ)2608、使用区
分2609、論理装置名2610及びプログラム内で使
用するときにデータ項目に付加する接頭語2611を定
義する。ここで使用区分2610とは、各標準パターン
においてある特別な用途で使用するファイルであること
を示す区分である。本例では入出力媒体「KYERR」
の使用区分を「ERR」と定義してあるが、これは標準
パターン「CHK01」において、チェック処理で編集
されるエラーコードやエラーメッセージの出力先である
ことを示している。
に格納されるプログラム定義部品の説明を行う。本例
は、図10のプログラム例におけるプログラム802の
プログラム仕様を定義したものである。2601はプロ
グラム属性定義部であり、2606は入出力媒体定義部
である。2602はプログラム記号名が「PROG0
1」であり、2603はプログラム日本語名が「給与リ
スト作成」であり、2604はプログラムで使用する標
準パターン名が「CHK01」である事を定義してい
る。2605はプログラム処理概要を定義する。入出力
媒体定義部2606は、入出力媒体に対応するファイル
定義部品名及び帳票定義部品名2607、それぞれの入
出力区分(以下、I/O区分とよぶ)2608、使用区
分2609、論理装置名2610及びプログラム内で使
用するときにデータ項目に付加する接頭語2611を定
義する。ここで使用区分2610とは、各標準パターン
においてある特別な用途で使用するファイルであること
を示す区分である。本例では入出力媒体「KYERR」
の使用区分を「ERR」と定義してあるが、これは標準
パターン「CHK01」において、チェック処理で編集
されるエラーコードやエラーメッセージの出力先である
ことを示している。
【0101】以下プログラム仕様書生成の手順について
図7のフローチャートを用いて詳細に説明する。初めに
生成対象の業務プログラム(以下該プログラムと略す)
のプログラム定義部品(図36)を入力し(ステップ5
01)、該業務プログラムで使用している標準パターン
名2604、入出力媒体の定義部品名2607及び使用
区分2609を取得する。次にプログラム処理概要図を
展開し、出力する(ステップ502)。
図7のフローチャートを用いて詳細に説明する。初めに
生成対象の業務プログラム(以下該プログラムと略す)
のプログラム定義部品(図36)を入力し(ステップ5
01)、該業務プログラムで使用している標準パターン
名2604、入出力媒体の定義部品名2607及び使用
区分2609を取得する。次にプログラム処理概要図を
展開し、出力する(ステップ502)。
【0102】図39を用いてプログラム処理概要図の展
開方式を説明する。プログラム名2901、記号名29
02、標準パターン名2903及び処理概要2912
は、それぞれプログラム定義部品(図36)の260
3、2602、2604及び2605から取得したもの
を出力する。入出力媒体の定義部品名2906、I/O
区分2907、使用区分2908、論理装置名2909
及び接頭語2910は、それぞれプログラム定義部品の
入出力媒体定義部の2607、2608、2609、2
610及び2611から取得したものを出力する。入出
力媒体の日本語名2905は、入出力媒体の定義部品名
2607を基にデータ定義書209のファイル定義部品
及び帳票定義部品を参照してファイル及び帳票の日本語
名を取得し出力する。本例ではプログラム定義部品に入
出力媒体定義部品名が「KYFIL」2608と定義し
てあるので、この定義部品名を基にファイル定義部品
(図32(a))を参照し、ファイルの日本語名「給与
ファイル」2203を取得して2905に出力する。以
後このように定義部品名を基に定義部品を参照してファ
イルや帳票の日本語名を取得する処理を日本語名取得と
呼ぶ。同様にデータ項目についてもデータ項目名を基に
データ項目辞書を参照してデータ項目の日本語名を取得
することができ、これについても日本語名取得と呼ぶ。
さらに上記の情報をもとに該プログラムの入出力関連を
2911に示すように図式化して出力する。
開方式を説明する。プログラム名2901、記号名29
02、標準パターン名2903及び処理概要2912
は、それぞれプログラム定義部品(図36)の260
3、2602、2604及び2605から取得したもの
を出力する。入出力媒体の定義部品名2906、I/O
区分2907、使用区分2908、論理装置名2909
及び接頭語2910は、それぞれプログラム定義部品の
入出力媒体定義部の2607、2608、2609、2
610及び2611から取得したものを出力する。入出
力媒体の日本語名2905は、入出力媒体の定義部品名
2607を基にデータ定義書209のファイル定義部品
及び帳票定義部品を参照してファイル及び帳票の日本語
名を取得し出力する。本例ではプログラム定義部品に入
出力媒体定義部品名が「KYFIL」2608と定義し
てあるので、この定義部品名を基にファイル定義部品
(図32(a))を参照し、ファイルの日本語名「給与
ファイル」2203を取得して2905に出力する。以
後このように定義部品名を基に定義部品を参照してファ
イルや帳票の日本語名を取得する処理を日本語名取得と
呼ぶ。同様にデータ項目についてもデータ項目名を基に
データ項目辞書を参照してデータ項目の日本語名を取得
することができ、これについても日本語名取得と呼ぶ。
さらに上記の情報をもとに該プログラムの入出力関連を
2911に示すように図式化して出力する。
【0103】図7に戻って、プログラム定義部品より既
に取得した標準パターン名を基に標準機能説明部品を入
力し(ステップ503)、プログラム機能説明図を展開
し出力する(ステップ504)。
に取得した標準パターン名を基に標準機能説明部品を入
力し(ステップ503)、プログラム機能説明図を展開
し出力する(ステップ504)。
【0104】図40を用いてプログラム機能説明図の展
開方式を説明する。プログラム名3001、プログラム
記号名3002及び標準パターン名3003は、それぞ
れ前記と同様にプログラム定義部品の2603、260
2及び2604から取得したものを出力する。入力媒体
名3004及び出力媒体名3006,3007について
も同様にプログラム定義部品の入出力媒体定義部から2
607を参照して日本語名を取得し、定義部品名及び日
本語名をそれぞれ出力する。入出力媒体のうち入力媒体
であるか出力媒体であるかは対応するI/O区分260
8を参照すればよく、以下入出力媒体のうちI/O区分
が「I」であるものを入力媒体、「O」であるものを出
力媒体と呼ぶ。機能説明の処理3005の記述について
は、標準機能説明部品の処理の記述部2802に入出力
媒体の日本語名取得したものを合成して出力する。
開方式を説明する。プログラム名3001、プログラム
記号名3002及び標準パターン名3003は、それぞ
れ前記と同様にプログラム定義部品の2603、260
2及び2604から取得したものを出力する。入力媒体
名3004及び出力媒体名3006,3007について
も同様にプログラム定義部品の入出力媒体定義部から2
607を参照して日本語名を取得し、定義部品名及び日
本語名をそれぞれ出力する。入出力媒体のうち入力媒体
であるか出力媒体であるかは対応するI/O区分260
8を参照すればよく、以下入出力媒体のうちI/O区分
が「I」であるものを入力媒体、「O」であるものを出
力媒体と呼ぶ。機能説明の処理3005の記述について
は、標準機能説明部品の処理の記述部2802に入出力
媒体の日本語名取得したものを合成して出力する。
【0105】図7に戻ってプログラム定義部品より既に
取得した標準パターン名を基にプログラム単位のチェッ
ク条件表、関連チェック条件表の生成判定を行う(ステ
ップ505)。例えば本例で使用している標準パターン
「CHK01」は入力ファイルを読み込み、その内容を
チェックして出力ファイルに書き出すようなパターンで
ある。このような入力データのチェック処理を含む標準
パターンについては、プログラム単位のチェック条件表
及び関連チェック条件表を生成出力する必要があると判
定する。プログラム単位のチェック条件表及び関連チェ
ック条件表の生成が必要と判定された場合、以下のよう
にプログラム単位のチェック条件表及び関連チェック条
件表を展開し出力する(ステップ506及び507)。
取得した標準パターン名を基にプログラム単位のチェッ
ク条件表、関連チェック条件表の生成判定を行う(ステ
ップ505)。例えば本例で使用している標準パターン
「CHK01」は入力ファイルを読み込み、その内容を
チェックして出力ファイルに書き出すようなパターンで
ある。このような入力データのチェック処理を含む標準
パターンについては、プログラム単位のチェック条件表
及び関連チェック条件表を生成出力する必要があると判
定する。プログラム単位のチェック条件表及び関連チェ
ック条件表の生成が必要と判定された場合、以下のよう
にプログラム単位のチェック条件表及び関連チェック条
件表を展開し出力する(ステップ506及び507)。
【0106】まず図41を用いてプログラム単位のチェ
ック条件表の展開方法を説明する。プログラム定義部品
に定義された入力媒体ごとに入力媒体の定義部品名を基
にファイル定義部品およびレコード定義部品を入力し、
さらに入力媒体で使用されているすべてのデータ項目に
ついて、データ項目ごとにデータ項目辞書を参照しなが
らプログラム単位のチェック条件表を展開していく。プ
ログラム名3103及びプログラム記号名3104の出
力方法については前記のプログラム処理概要図と同様で
ある。入力媒体の定義部品名3102及びその日本語名
3101にはプログラム定義部品から取得した入力媒体
の定義部品名とそれを基に日本語名取得したものとを出
力する。出力媒体の定義部品名3106及びその日本語
名3105にはチェック処理によって編集されるエラー
コードやエラーメッセージの出力先の出力媒体に関する
情報を出力する。このためプログラム定義部品に定義さ
れた出力媒体のうち、使用区分2609が「ERR」で
あるものをエラーメッセージの出力先と判定し、その出
力媒体定義部品名とそれを基に日本語名取得したものと
を出力する。入力項目の欄にはデータ項目名及びその日
本語名3107をデータ項目辞書のデータ項目部品90
1から取得し、属性3108を入力媒体の定義部品から
取得して出力する。チェック処理の欄にはデータ項目辞
書のチェック処理定義部906に定義されている内容を
基にキーワード3109、チェック条件3110、エラ
ーコード3111及びエラーメッセージ3112の欄に
出力する。チェック条件欄については、データ項目辞書
のデータ項目部品に編集方法がキーワードによって記述
されているので、キーワードが示す意味を日本語に変換
して出力する。
ック条件表の展開方法を説明する。プログラム定義部品
に定義された入力媒体ごとに入力媒体の定義部品名を基
にファイル定義部品およびレコード定義部品を入力し、
さらに入力媒体で使用されているすべてのデータ項目に
ついて、データ項目ごとにデータ項目辞書を参照しなが
らプログラム単位のチェック条件表を展開していく。プ
ログラム名3103及びプログラム記号名3104の出
力方法については前記のプログラム処理概要図と同様で
ある。入力媒体の定義部品名3102及びその日本語名
3101にはプログラム定義部品から取得した入力媒体
の定義部品名とそれを基に日本語名取得したものとを出
力する。出力媒体の定義部品名3106及びその日本語
名3105にはチェック処理によって編集されるエラー
コードやエラーメッセージの出力先の出力媒体に関する
情報を出力する。このためプログラム定義部品に定義さ
れた出力媒体のうち、使用区分2609が「ERR」で
あるものをエラーメッセージの出力先と判定し、その出
力媒体定義部品名とそれを基に日本語名取得したものと
を出力する。入力項目の欄にはデータ項目名及びその日
本語名3107をデータ項目辞書のデータ項目部品90
1から取得し、属性3108を入力媒体の定義部品から
取得して出力する。チェック処理の欄にはデータ項目辞
書のチェック処理定義部906に定義されている内容を
基にキーワード3109、チェック条件3110、エラ
ーコード3111及びエラーメッセージ3112の欄に
出力する。チェック条件欄については、データ項目辞書
のデータ項目部品に編集方法がキーワードによって記述
されているので、キーワードが示す意味を日本語に変換
して出力する。
【0107】本例においては、まずプログラム定義部品
の入力媒体定義部品名が「KYFIL」2607である
ので、対応するファイル定義部品(図32(a))を参
照して対応するレコード定義部品名「KYREC」22
05を取得する。さらに対応するレコード定義部品(図
32(b))を入力し、定義されているデータ項目の順
に入力項目欄及びチェック処理欄を展開し出力する。
「KYREC」のレコードレイアウト定義2212にお
いて、1番目に定義されているデータ項目は「SIME
I−NO」2214であるので、まず対応するデータ項
目辞書のデータ項目部品(図11)を参照し、データ項
目の日本語名「氏名番号」903を取得する。次にデー
タ項目辞書のチェック処理定義部からキーワード90
9、エラーコード910及びエラーメッセージ911を
取得し出力する。キーワード「SUB(SUB01)」
は、サブルーチン呼び出しを示すキーワードであり、S
UB01は呼び出されるサブルーチンのプログラム記号
名を表している。そこでチェック条件3110には「サ
ブルーチン(SUB01)を呼び出すことによりチェッ
クする」とキーワードの示す意味を日本語に展開し出力
する。以後このようなキーワードの示す意味を日本語に
変換する処理をキーワード日本語変換と呼ぶ。以下レコ
ードレイアウト定義2212のデータ項目名2214に
対し同じ手順を繰り返すことによってプログラム単位の
チェック条件表を生成する。
の入力媒体定義部品名が「KYFIL」2607である
ので、対応するファイル定義部品(図32(a))を参
照して対応するレコード定義部品名「KYREC」22
05を取得する。さらに対応するレコード定義部品(図
32(b))を入力し、定義されているデータ項目の順
に入力項目欄及びチェック処理欄を展開し出力する。
「KYREC」のレコードレイアウト定義2212にお
いて、1番目に定義されているデータ項目は「SIME
I−NO」2214であるので、まず対応するデータ項
目辞書のデータ項目部品(図11)を参照し、データ項
目の日本語名「氏名番号」903を取得する。次にデー
タ項目辞書のチェック処理定義部からキーワード90
9、エラーコード910及びエラーメッセージ911を
取得し出力する。キーワード「SUB(SUB01)」
は、サブルーチン呼び出しを示すキーワードであり、S
UB01は呼び出されるサブルーチンのプログラム記号
名を表している。そこでチェック条件3110には「サ
ブルーチン(SUB01)を呼び出すことによりチェッ
クする」とキーワードの示す意味を日本語に展開し出力
する。以後このようなキーワードの示す意味を日本語に
変換する処理をキーワード日本語変換と呼ぶ。以下レコ
ードレイアウト定義2212のデータ項目名2214に
対し同じ手順を繰り返すことによってプログラム単位の
チェック条件表を生成する。
【0108】次に関連チェック条件表の生成について説
明する。プログラム定義部品に定義された全ての入力媒
体について入力媒体定義部品名を基にファイル定義部品
及びレコード定義部品を入力し、さらに入力媒体で使用
されているすべてのデータ項目についてデータ項目ごと
に関連チェック条件表の生成判定を行う。判定条件は、
該データ項目に対する関連チェック定義部品が存在する
こと、かつ該データ項目に対応する関連チェック定義部
品に記載されている関連データ項目2502の全てが該
プログラムで使用する入力媒体に含まれている場合にの
み該関連チェック定義部品に対する関連チェック条件表
を生成する。なお入力媒体が複数ある場合は関連データ
項目は入力媒体のどれかに含まれていればよい。
明する。プログラム定義部品に定義された全ての入力媒
体について入力媒体定義部品名を基にファイル定義部品
及びレコード定義部品を入力し、さらに入力媒体で使用
されているすべてのデータ項目についてデータ項目ごと
に関連チェック条件表の生成判定を行う。判定条件は、
該データ項目に対する関連チェック定義部品が存在する
こと、かつ該データ項目に対応する関連チェック定義部
品に記載されている関連データ項目2502の全てが該
プログラムで使用する入力媒体に含まれている場合にの
み該関連チェック定義部品に対する関連チェック条件表
を生成する。なお入力媒体が複数ある場合は関連データ
項目は入力媒体のどれかに含まれていればよい。
【0109】本例では入力媒体にあるデータ項目のうち
「SIKYU−GK」2214については関連チェック
定義部品が存在し(図35)、かつ該関連定義部品の関
連データ項目に記載されている「SYOKUI−CD」
2502は該プログラムの入力媒体に対するレコード定
義部品(図32(b))に含まれているので、入力チェ
ック条件表の生成が必要と判定する。この際関連データ
項目の入力元となる入力媒体定義部品名を取得してお
く。関連チェック定義部品が存在しない「SIKYU−
GK」以外のデータ項目については、関連チェック条件
表は生成しない。関連チェック条件表の生成が必要と判
定された場合、該関連チェック定義部品及びデータ項目
辞書のデータ項目部品を参照しながら関連チェック条件
表を展開する。
「SIKYU−GK」2214については関連チェック
定義部品が存在し(図35)、かつ該関連定義部品の関
連データ項目に記載されている「SYOKUI−CD」
2502は該プログラムの入力媒体に対するレコード定
義部品(図32(b))に含まれているので、入力チェ
ック条件表の生成が必要と判定する。この際関連データ
項目の入力元となる入力媒体定義部品名を取得してお
く。関連チェック定義部品が存在しない「SIKYU−
GK」以外のデータ項目については、関連チェック条件
表は生成しない。関連チェック条件表の生成が必要と判
定された場合、該関連チェック定義部品及びデータ項目
辞書のデータ項目部品を参照しながら関連チェック条件
表を展開する。
【0110】図42を用いて関連チェック条件表の展開
方法を説明する。プログラム名3201及びプログラム
記号名3202の出力方法については、前記のプログラ
ム処理概要図と同様である。入力媒体上のデータ項目の
記号名3206及びその日本語名3205については関
連チェック定義部品2504から取得したデータ項目名
とそれを基に日本語名取得したものとを出力する。チェ
ック条件3207及びマトリクス3208については、
関連チェック定義部品の条件2505及びマトリクス2
506から取得して出力する。エラーコード3211、
エラーメッセージ3212及びマトリクス3213につ
いては、関連チェック定義部品のエラーコード250
8、エラーメッセージ2509及びマトリクス2510
から取得して出力する。入力媒体の定義部品名3204
及びその日本語名3203については、関連チェック生
成判定時に既に取得してある該データ項目が含まれてい
る入力媒体の定義部品名とこれを基に日本語名取得を行
ったものとを出力する。出力媒体の定義部品名3210
及びその日本語名3209については、プログラム単位
のチェック条件表におけるエラーコード及びエラーメッ
セージ出力先と全く同様にして出力する。
方法を説明する。プログラム名3201及びプログラム
記号名3202の出力方法については、前記のプログラ
ム処理概要図と同様である。入力媒体上のデータ項目の
記号名3206及びその日本語名3205については関
連チェック定義部品2504から取得したデータ項目名
とそれを基に日本語名取得したものとを出力する。チェ
ック条件3207及びマトリクス3208については、
関連チェック定義部品の条件2505及びマトリクス2
506から取得して出力する。エラーコード3211、
エラーメッセージ3212及びマトリクス3213につ
いては、関連チェック定義部品のエラーコード250
8、エラーメッセージ2509及びマトリクス2510
から取得して出力する。入力媒体の定義部品名3204
及びその日本語名3203については、関連チェック生
成判定時に既に取得してある該データ項目が含まれてい
る入力媒体の定義部品名とこれを基に日本語名取得を行
ったものとを出力する。出力媒体の定義部品名3210
及びその日本語名3209については、プログラム単位
のチェック条件表におけるエラーコード及びエラーメッ
セージ出力先と全く同様にして出力する。
【0111】図7に戻って、プログラム定義部品に定義
された出力媒体と入力媒体との全ての組合せに対してそ
の組合せごとに出力媒体定義部品名を基にファイル定義
部品、レコード定義部品及び帳票定義部品を入力し、さ
らに出力媒体で使用されているすべてのデータ項目につ
いてデータ項目ごとにデータ項目辞書のデータ項目部品
を参照しながらプログラム単位の編集条件表を展開する
(ステップ508)。
された出力媒体と入力媒体との全ての組合せに対してそ
の組合せごとに出力媒体定義部品名を基にファイル定義
部品、レコード定義部品及び帳票定義部品を入力し、さ
らに出力媒体で使用されているすべてのデータ項目につ
いてデータ項目ごとにデータ項目辞書のデータ項目部品
を参照しながらプログラム単位の編集条件表を展開する
(ステップ508)。
【0112】次に図43を用いてプログラム単位の編集
条件表の展開方法を説明する。プログラム名3303及
びプログラム記号名3304の出力方法については前記
プログラム処理概要図と同様である。出力媒体の定義部
品名3302及びその日本語名3301、入力媒体の定
義部品名3306及びその日本語名3305にはプログ
ラム定義部品より取得した該出力媒体定義部品名、該入
力媒体定義部品名及びそれを基に日本語名取得したもの
をそれぞれ出力する。出力項目の欄については、330
7はデータ項目名と、それをもとに日本語名取得したも
のとを出力し、属性3308は該データ項目名に対し出
力媒体上で定義されている属性2212を取得して出力
する。入力項目欄の入力項目名3312及び3313に
ついては、出力項目を編集する際の情報元となる入力媒
体上のデータ項目についてデータ項目名とそれを基にデ
ータ項目辞書のデータ項目部品から日本語名903と属
性904を取得して出力する。編集の欄には、データ項
目辞書の入力編集定義部907及び出力編集定義部90
8に定義されている内容を基にキーワード欄3309、
編集方法欄3310及び編集区分欄3311に出力す
る。編集方法欄3310については、データ項目辞書の
データ項目部品の編集方法がキーワードによって記述さ
れているので、キーワード日本語変換を行い出力する。
編集区分欄3311には編集方法がデータ項目辞書のデ
ータ項目部品の入力編集から展開されたものである場合
は「入力編集」、出力編集から展開されたものである場
合は「出力編集」と出力する。
条件表の展開方法を説明する。プログラム名3303及
びプログラム記号名3304の出力方法については前記
プログラム処理概要図と同様である。出力媒体の定義部
品名3302及びその日本語名3301、入力媒体の定
義部品名3306及びその日本語名3305にはプログ
ラム定義部品より取得した該出力媒体定義部品名、該入
力媒体定義部品名及びそれを基に日本語名取得したもの
をそれぞれ出力する。出力項目の欄については、330
7はデータ項目名と、それをもとに日本語名取得したも
のとを出力し、属性3308は該データ項目名に対し出
力媒体上で定義されている属性2212を取得して出力
する。入力項目欄の入力項目名3312及び3313に
ついては、出力項目を編集する際の情報元となる入力媒
体上のデータ項目についてデータ項目名とそれを基にデ
ータ項目辞書のデータ項目部品から日本語名903と属
性904を取得して出力する。編集の欄には、データ項
目辞書の入力編集定義部907及び出力編集定義部90
8に定義されている内容を基にキーワード欄3309、
編集方法欄3310及び編集区分欄3311に出力す
る。編集方法欄3310については、データ項目辞書の
データ項目部品の編集方法がキーワードによって記述さ
れているので、キーワード日本語変換を行い出力する。
編集区分欄3311には編集方法がデータ項目辞書のデ
ータ項目部品の入力編集から展開されたものである場合
は「入力編集」、出力編集から展開されたものである場
合は「出力編集」と出力する。
【0113】ここでデータ項目に対するデータ項目辞書
のデータ項目部品に定義された編集方法を編集のキーワ
ード欄3309及び編集方法欄3310へ展開する際の
判定条件について説明する。入力編集の場合の展開判定
条件は、該プログラムに対する入力媒体が入力画面又は
入力帳票などユーザから入力される媒体である場合又は
該プログラム実行中に入力媒体中のデータを基に該デー
タ項目が新しく生成される場合、すなわち該データ項目
が該プログラムの入力媒体には含まれないが出力媒体に
は含まれる場合であり、いずれかの場合には入力編集を
展開する。出力編集の場合の展開判定条件は、該プログ
ラムの出力媒体が出力画面又は帳票などの媒体であり、
かつ入力媒体と出力媒体の両方に該データ項目が含まれ
る場合であり、この場合には出力編集を展開する。
のデータ項目部品に定義された編集方法を編集のキーワ
ード欄3309及び編集方法欄3310へ展開する際の
判定条件について説明する。入力編集の場合の展開判定
条件は、該プログラムに対する入力媒体が入力画面又は
入力帳票などユーザから入力される媒体である場合又は
該プログラム実行中に入力媒体中のデータを基に該デー
タ項目が新しく生成される場合、すなわち該データ項目
が該プログラムの入力媒体には含まれないが出力媒体に
は含まれる場合であり、いずれかの場合には入力編集を
展開する。出力編集の場合の展開判定条件は、該プログ
ラムの出力媒体が出力画面又は帳票などの媒体であり、
かつ入力媒体と出力媒体の両方に該データ項目が含まれ
る場合であり、この場合には出力編集を展開する。
【0114】以下、本例におけるプログラム単位の編集
条件表の生成例を詳細に示す。プログラム定義部品に定
義された出力媒体と入力媒体の組は、「KYLST」8
03と「KYFIL」801、「KYERR」804と
「KYFIL」801であるので、まず1組目の「KY
LST」と「KYFIL」に着目する。「KYLST」
を基に帳票定義部品(図31(a))を入力し、そこで
定義されているデータ項目に着目する。
条件表の生成例を詳細に示す。プログラム定義部品に定
義された出力媒体と入力媒体の組は、「KYLST」8
03と「KYFIL」801、「KYERR」804と
「KYFIL」801であるので、まず1組目の「KY
LST」と「KYFIL」に着目する。「KYLST」
を基に帳票定義部品(図31(a))を入力し、そこで
定義されているデータ項目に着目する。
【0115】帳票定義部品のデータ項目名2111の1
番目に定義されているデータ項目は「SIMEI−N
O」であるので、データ項目辞書のデータ項目部品(図
11)からデータ項目の日本語名「氏名番号」903を
取得し、帳票仕様書から属性「X(4)」2112を取
得して出力する。「SIMEI−NO」は入力媒体に含
まれるので、入力編集は展開しない。次にデータ項目辞
書の出力編集定義部を参照するが、何も定義されていな
い。これは出力編集時はこの該データ項目について何の
加工も施さずに出力することを示す。そこでキーワード
は空白とし、編集方法欄3310には「そのまま転送す
る」と出力する。
番目に定義されているデータ項目は「SIMEI−N
O」であるので、データ項目辞書のデータ項目部品(図
11)からデータ項目の日本語名「氏名番号」903を
取得し、帳票仕様書から属性「X(4)」2112を取
得して出力する。「SIMEI−NO」は入力媒体に含
まれるので、入力編集は展開しない。次にデータ項目辞
書の出力編集定義部を参照するが、何も定義されていな
い。これは出力編集時はこの該データ項目について何の
加工も施さずに出力することを示す。そこでキーワード
は空白とし、編集方法欄3310には「そのまま転送す
る」と出力する。
【0116】データ項目名2111の2番目に定義され
ているデータ項目は「SIMEI」であるので、同様に
データ項目辞書のデータ項目部品(図12)からデータ
項目の日本語名「氏名」を取得し、帳票仕様書から属性
「N(9)」2112を取得し出力する。次にデータ項
目辞書の入力編集定義部914を参照し、編集方法のキ
ーワード「SUB(SUB01,SIMEI−NO)」
を取得する。これはサブルーチン呼出しを示すキーワー
ドであり、「SUB01」はサブルーチン名を示し、
「SIMEI−NO」はそのサブルーチンに引き渡す入
力パラメータであることを示している。従って「SIM
EI」に対する入力項目が「SIMEI−NO」である
ことが分かる。「SIMEI」は該プログラムの入力媒
体である「KYFIL」には含まれていないので、入力
編集の場合の展開判定条件を満たしている。従ってキー
ワード「SUB」及びキーワード日本語変換処理を行っ
たものを編集の欄3309、3310に出力し、入力項
目「SIMEI−NO」とその属性を入力項目欄331
2、3313に出力する。なお本例ではデータ項目辞書
の出力編集定義部に何も定義されていないためこのよう
に入力編集のみを展開しているが、さらに出力編集定義
部にも定義されている場合には入力編集及び出力編集の
両方をこの順番に展開して出力する。
ているデータ項目は「SIMEI」であるので、同様に
データ項目辞書のデータ項目部品(図12)からデータ
項目の日本語名「氏名」を取得し、帳票仕様書から属性
「N(9)」2112を取得し出力する。次にデータ項
目辞書の入力編集定義部914を参照し、編集方法のキ
ーワード「SUB(SUB01,SIMEI−NO)」
を取得する。これはサブルーチン呼出しを示すキーワー
ドであり、「SUB01」はサブルーチン名を示し、
「SIMEI−NO」はそのサブルーチンに引き渡す入
力パラメータであることを示している。従って「SIM
EI」に対する入力項目が「SIMEI−NO」である
ことが分かる。「SIMEI」は該プログラムの入力媒
体である「KYFIL」には含まれていないので、入力
編集の場合の展開判定条件を満たしている。従ってキー
ワード「SUB」及びキーワード日本語変換処理を行っ
たものを編集の欄3309、3310に出力し、入力項
目「SIMEI−NO」とその属性を入力項目欄331
2、3313に出力する。なお本例ではデータ項目辞書
の出力編集定義部に何も定義されていないためこのよう
に入力編集のみを展開しているが、さらに出力編集定義
部にも定義されている場合には入力編集及び出力編集の
両方をこの順番に展開して出力する。
【0117】データ項目名2111の3番目に定義され
ているデータ項目は「NYUSYA−YMD」であるの
で、データ項目辞書のデータ項目部品(図13)から
「入社年月日」を取得し、帳票仕様書から属性「X
(8)」2112を取得してそれぞれ出力項目欄330
7、3308に出力する。次にデータ項目辞書の出力編
集定義部を参照し、キーワード「DATE」917を取
得する。該出力媒体は帳票であるので、出力編集の場合
の展開判定条件を満たしている。そこでキーワード欄3
309及び編集方法欄3310にはキーワードとキーワ
ード日本語変換を行った「YY.MM.DDの形式に変
換する」とを出力し、入力項目欄3312、3313に
は自身と同名の「NYUSYA−YMD」とその属性を
データ項目辞書のデータ項目部品から取得してそれぞれ
出力する。
ているデータ項目は「NYUSYA−YMD」であるの
で、データ項目辞書のデータ項目部品(図13)から
「入社年月日」を取得し、帳票仕様書から属性「X
(8)」2112を取得してそれぞれ出力項目欄330
7、3308に出力する。次にデータ項目辞書の出力編
集定義部を参照し、キーワード「DATE」917を取
得する。該出力媒体は帳票であるので、出力編集の場合
の展開判定条件を満たしている。そこでキーワード欄3
309及び編集方法欄3310にはキーワードとキーワ
ード日本語変換を行った「YY.MM.DDの形式に変
換する」とを出力し、入力項目欄3312、3313に
は自身と同名の「NYUSYA−YMD」とその属性を
データ項目辞書のデータ項目部品から取得してそれぞれ
出力する。
【0118】データ項目名2111の4番目に定義され
たデータ項目「SYOKUI−CD」については、「S
IMEI−NO」の場合と同様に展開する。
たデータ項目「SYOKUI−CD」については、「S
IMEI−NO」の場合と同様に展開する。
【0119】データ項目2111の5番目に定義された
データ項目「SIKYU−GK」については、「SIM
EI−NO」と同様にデータ項目辞書の入力編集定義部
にも出力編集定義部にも定義情報がないが、帳票定義部
品より取得された属性が「Z,ZZZ,ZZ9」210
9であり、これはゼロサプレスおよびカンマ編集を行う
ものであるので、この場合は編集方法欄3310に
「Z,ZZZ,ZZ9の形式に編集する」と出力する。
データ項目「SIKYU−GK」については、「SIM
EI−NO」と同様にデータ項目辞書の入力編集定義部
にも出力編集定義部にも定義情報がないが、帳票定義部
品より取得された属性が「Z,ZZZ,ZZ9」210
9であり、これはゼロサプレスおよびカンマ編集を行う
ものであるので、この場合は編集方法欄3310に
「Z,ZZZ,ZZ9の形式に編集する」と出力する。
【0120】(5)プログラム生成 以下、プログラム生成216の手順を説明する。プログ
ラム生成の手順の説明に先立ち、図44〜図47を用い
てプログラム仕様書ライブラリ217上でのプログラム
仕様書の格納形式について説明する。
ラム生成の手順の説明に先立ち、図44〜図47を用い
てプログラム仕様書ライブラリ217上でのプログラム
仕様書の格納形式について説明する。
【0121】図44はプログラム仕様書ライブラリ上の
プログラム処理概要図の格納形式である。この形式は、
業務プログラムのプログラム名3401、記号名340
2、業務プログラムで使用する標準パターン名340
3、入出力媒体の日本語名3404、定義部品名340
5、I/O区分3406、使用区分3407、論理装置
名3408、接頭語3409及びプログラムの処理概要
3410の欄により構成される。これは図39に示すプ
ログラム処理概要図の出力例と全く同じデータにより構
成される。
プログラム処理概要図の格納形式である。この形式は、
業務プログラムのプログラム名3401、記号名340
2、業務プログラムで使用する標準パターン名340
3、入出力媒体の日本語名3404、定義部品名340
5、I/O区分3406、使用区分3407、論理装置
名3408、接頭語3409及びプログラムの処理概要
3410の欄により構成される。これは図39に示すプ
ログラム処理概要図の出力例と全く同じデータにより構
成される。
【0122】図45はプログラム仕様書ライブラリ上の
プログラム単位のチェック条件表の格納形式である。こ
の形式は、入力媒体の定義部品名3501、出力媒体の
定義部品名3502、入力項目の日本語名3503、記
号名3504、属性3505、チェック処理のキーワー
ド3506、チェック条件3507、エラーコード35
08及びエラーメッセージ3509の欄により構成され
る。これは図41に示すプログラム単位のチェック条件
表の出力例と全く同じデータにより構成される。 図4
6はプログラム仕様書ライブラリ上の関連チェック条件
表の格納形式である。この形式は、入出力媒体の定義部
品名3601、入力項目の日本語名3602、記号名3
603、チェック条件のキーワード3604、エラーコ
ード3605、エラーメッセージ3606及びマトリク
ス3607の欄により構成される。これは図42に示す
関連チェック条件表の出力例と全く同じデータにより構
成される。
プログラム単位のチェック条件表の格納形式である。こ
の形式は、入力媒体の定義部品名3501、出力媒体の
定義部品名3502、入力項目の日本語名3503、記
号名3504、属性3505、チェック処理のキーワー
ド3506、チェック条件3507、エラーコード35
08及びエラーメッセージ3509の欄により構成され
る。これは図41に示すプログラム単位のチェック条件
表の出力例と全く同じデータにより構成される。 図4
6はプログラム仕様書ライブラリ上の関連チェック条件
表の格納形式である。この形式は、入出力媒体の定義部
品名3601、入力項目の日本語名3602、記号名3
603、チェック条件のキーワード3604、エラーコ
ード3605、エラーメッセージ3606及びマトリク
ス3607の欄により構成される。これは図42に示す
関連チェック条件表の出力例と全く同じデータにより構
成される。
【0123】図47はプログラム仕様書ライブラリ上の
プログラム単位の編集条件表の格納形式である。この形
式は入力媒体の定義部品名3701、出力媒体の定義部
品名3702、出力項目の日本語名3703、記号名3
704、属性3705、編集方法のキーワード370
6、編集方法3707、編集区分3708、入力項目の
日本語名3709、記号名3710及び属性3711の
欄により構成される。これは図26に示すプログラム単
位の編集条件表の出力例と全く同じデータにより構成さ
れる。
プログラム単位の編集条件表の格納形式である。この形
式は入力媒体の定義部品名3701、出力媒体の定義部
品名3702、出力項目の日本語名3703、記号名3
704、属性3705、編集方法のキーワード370
6、編集方法3707、編集区分3708、入力項目の
日本語名3709、記号名3710及び属性3711の
欄により構成される。これは図26に示すプログラム単
位の編集条件表の出力例と全く同じデータにより構成さ
れる。
【0124】次にプログラム生成の手順を説明する。図
8はプログラム生成の手順を示すフローチャートであ
り、図48〜図50はプログラム仕様書(図44〜図4
7)及びデータ定義書内の定義部品(図31〜図32)
を基としたプログラム生成機能によるソースプログラム
の展開例である。以下この例を用いてプログラム生成機
能の具体的手順を説明する。
8はプログラム生成の手順を示すフローチャートであ
り、図48〜図50はプログラム仕様書(図44〜図4
7)及びデータ定義書内の定義部品(図31〜図32)
を基としたプログラム生成機能によるソースプログラム
の展開例である。以下この例を用いてプログラム生成機
能の具体的手順を説明する。
【0125】生成機能は、まず生成対象の業務プログラ
ムのプログラム処理概要図(3400から使用する標準
パターン名「CHK01」3403を取得し、対応する
標準パターン2702を標準パターンライブラリ211
から入力する(ステップ601)。入出力部品展開(ス
テップ602)では該プログラムのプログラム処理概要
図で定義した入出力媒体名を基にデータ定義書209か
ら入出力媒体の定義部品を入力し、該プログラムの入出
力宣言部分のソースコードを生成し、これをステップ6
01で入力した標準パターンに合成する。
ムのプログラム処理概要図(3400から使用する標準
パターン名「CHK01」3403を取得し、対応する
標準パターン2702を標準パターンライブラリ211
から入力する(ステップ601)。入出力部品展開(ス
テップ602)では該プログラムのプログラム処理概要
図で定義した入出力媒体名を基にデータ定義書209か
ら入出力媒体の定義部品を入力し、該プログラムの入出
力宣言部分のソースコードを生成し、これをステップ6
01で入力した標準パターンに合成する。
【0126】図48を用いて入出力宣言部分の展開方法
を具体的に説明する。プログラム生成機能はプログラム
処理概要図3400に記載された入出力媒体定義部品名
3405から「KYFIL」、「KYLST」等の定義
部品名を取得し、これを基に対応するファイル定義部品
2201及び帳票定義部品2101、2107を読み込
み、これらの情報から該プログラムの入出力環境定義3
802、3803、ファイル記述3804、3806及
びデータ記述3805、3807を生成し、これを標準
パターン2702に合成する。
を具体的に説明する。プログラム生成機能はプログラム
処理概要図3400に記載された入出力媒体定義部品名
3405から「KYFIL」、「KYLST」等の定義
部品名を取得し、これを基に対応するファイル定義部品
2201及び帳票定義部品2101、2107を読み込
み、これらの情報から該プログラムの入出力環境定義3
802、3803、ファイル記述3804、3806及
びデータ記述3805、3807を生成し、これを標準
パターン2702に合成する。
【0127】帳票印刷処理展開(ステップ604)は、
該プログラムが帳票を出力する標準パターンを使用して
いる場合に行い、該プログラムのプログラム処理概要図
に記載されている出力媒体定義部品名を基にデータ定義
書209から該当する帳票定義部品を入力し、これから
帳票編集用作業領域及び帳票出力手続きを生成し601
で入力した標準パターン2702に合成する。
該プログラムが帳票を出力する標準パターンを使用して
いる場合に行い、該プログラムのプログラム処理概要図
に記載されている出力媒体定義部品名を基にデータ定義
書209から該当する帳票定義部品を入力し、これから
帳票編集用作業領域及び帳票出力手続きを生成し601
で入力した標準パターン2702に合成する。
【0128】図48を用いて帳票印刷処理展開処理(ス
テップ604)について具体的に説明する。プログラム
生成機能はプログラム処理概要図3400に記載された
帳票定義部品名3405を基に帳票定義部品2101、
2107を読み込み、これらの定義内容から帳票に関す
る帳票編集用作業領域3809及びプログラム実行時に
使用するカウンタ等の作業領域3808を生成し、これ
を標準パターン2702に合成する。
テップ604)について具体的に説明する。プログラム
生成機能はプログラム処理概要図3400に記載された
帳票定義部品名3405を基に帳票定義部品2101、
2107を読み込み、これらの定義内容から帳票に関す
る帳票編集用作業領域3809及びプログラム実行時に
使用するカウンタ等の作業領域3808を生成し、これ
を標準パターン2702に合成する。
【0129】チェック、関連チェック及び編集処理展開
(ステップ605)においては、プログラム仕様書のう
ちのプログラム単位のチェック条件表、関連チェック条
件表及びプログラム単位の編集条件表に記載されている
キーワードを基にデータ項目中心の処理を生成して、こ
れを標準パターンのチェック処理部2703、関連チェ
ック処理部2704及び編集処理部2705にそれぞれ
展開する。
(ステップ605)においては、プログラム仕様書のう
ちのプログラム単位のチェック条件表、関連チェック条
件表及びプログラム単位の編集条件表に記載されている
キーワードを基にデータ項目中心の処理を生成して、こ
れを標準パターンのチェック処理部2703、関連チェ
ック処理部2704及び編集処理部2705にそれぞれ
展開する。
【0130】図50を用いてソースプログラム展開方法
についてプログラム単位の編集条件表からの展開を例に
とり具体的に説明する。まず該プログラムのプログラム
単位の編集条件表3700を読み込み、このプログラム
単位の編集条件表にキーワード3706で定義されてい
る編集条件を基に該データ項目に対する処理を生成して
これを標準パターンの編集処理部2705にそれぞれ展
開する。その際データ項目の編集に必要な作業領域につ
いても同時に生成する。例えば編集条件表3700の第
3行目のキーワード「DATE」3706の場合は、図
48の3810に示すように日付を年、月、日に区切る
ための作業領域と編集用の作業領域とを生成する。
についてプログラム単位の編集条件表からの展開を例に
とり具体的に説明する。まず該プログラムのプログラム
単位の編集条件表3700を読み込み、このプログラム
単位の編集条件表にキーワード3706で定義されてい
る編集条件を基に該データ項目に対する処理を生成して
これを標準パターンの編集処理部2705にそれぞれ展
開する。その際データ項目の編集に必要な作業領域につ
いても同時に生成する。例えば編集条件表3700の第
3行目のキーワード「DATE」3706の場合は、図
48の3810に示すように日付を年、月、日に区切る
ための作業領域と編集用の作業領域とを生成する。
【0131】さらにデータ項目に対する処理を展開する
際には本例で示すようにプログラム処理概要図3400
で定義した接頭語3409をそれぞれのファイル上の項
目名に付加する。例えば3814に示すようにデータ項
目「SIKYU−GK」に対し入力項目には「IN−」
を、出力項目には「OU−」をそれぞれ付加し、入力フ
ァイル上の記号項目名は「IN−SIKYU−GK」3
815、出力ファイル上の記号項目名は「OU−SIK
YU−GK」3816とプログラム生成時に決定してい
る。このことによりデータ項目中心のソフトウェア部品
をそのデータ項目を扱うファイルなどの入出力媒体の定
義部品から独立させている。
際には本例で示すようにプログラム処理概要図3400
で定義した接頭語3409をそれぞれのファイル上の項
目名に付加する。例えば3814に示すようにデータ項
目「SIKYU−GK」に対し入力項目には「IN−」
を、出力項目には「OU−」をそれぞれ付加し、入力フ
ァイル上の記号項目名は「IN−SIKYU−GK」3
815、出力ファイル上の記号項目名は「OU−SIK
YU−GK」3816とプログラム生成時に決定してい
る。このことによりデータ項目中心のソフトウェア部品
をそのデータ項目を扱うファイルなどの入出力媒体の定
義部品から独立させている。
【0132】図8に戻ってソースプログラム出力(ステ
ップ606)は、以上の処理により生成できた目的の業
務プログラムをソースプログラムライブラリに出力す
る。
ップ606)は、以上の処理により生成できた目的の業
務プログラムをソースプログラムライブラリに出力す
る。
【0133】なお本実施例ではバッチ処理のプログラム
の例を挙げて説明したが、データベースへのアクセスを
伴う対話処理のプログラムや他装置上の資源やプロセス
へのアクセスを行うプログラムについても同様にして生
成が可能である。
の例を挙げて説明したが、データベースへのアクセスを
伴う対話処理のプログラムや他装置上の資源やプロセス
へのアクセスを行うプログラムについても同様にして生
成が可能である。
【0134】また本実施例ではプログラム仕様書からソ
ースプログラムを生成しているが、プログラム仕様書を
介さずにデータ項目辞書、関連チェック定義書、データ
定義書、プログラム定義書及び標準機能説明ライブラリ
を入力して直接ソースプログラムを生成することも可能
であり、この方法を用いる場合も本発明の範囲に含まれ
る。この場合は、プログラム仕様書生成時と同じ要領で
対象とする業務プログラムの入出力媒体中に存在するデ
ータ項目を基にデータ項目中心のソフトウェア部品の選
択を行い、標準パターンに合成する。
ースプログラムを生成しているが、プログラム仕様書を
介さずにデータ項目辞書、関連チェック定義書、データ
定義書、プログラム定義書及び標準機能説明ライブラリ
を入力して直接ソースプログラムを生成することも可能
であり、この方法を用いる場合も本発明の範囲に含まれ
る。この場合は、プログラム仕様書生成時と同じ要領で
対象とする業務プログラムの入出力媒体中に存在するデ
ータ項目を基にデータ項目中心のソフトウェア部品の選
択を行い、標準パターンに合成する。
【0135】(6)プログラム仕様書編集及びソフトウ
ェア部品逆生成 最後に本実施例におけるプログラム仕様書編集221及
びソフトウェア部品逆生成215について、これらの機
能の使用例を示しながら合わせて説明する。以下の使用
例は、図10に示したプログラム例に対しプログラム仕
様書編集221を用いてプログラム仕様書修正を行い、
修正後のプログラム仕様書からソフトウェア部品逆生成
215を用いてソフトウェア部品を修正する例である。
ェア部品逆生成 最後に本実施例におけるプログラム仕様書編集221及
びソフトウェア部品逆生成215について、これらの機
能の使用例を示しながら合わせて説明する。以下の使用
例は、図10に示したプログラム例に対しプログラム仕
様書編集221を用いてプログラム仕様書修正を行い、
修正後のプログラム仕様書からソフトウェア部品逆生成
215を用いてソフトウェア部品を修正する例である。
【0136】まず各種プログラム仕様書の修正例につい
て説明する。図45(a)は生成直後のプログラム単位
のチェック条件表の例であり、図45(b)は修正後の
プログラム単位のチェック条件表の例である。図46
(a)は生成直後の関連チェック条件表の例であり、図
46(b)は修正後の関連チェック条件表の例である。
図47(a)は生成直後のプログラム単位の編集条件表
の例であり、図47(b)は修正後の編集条件表の例で
ある。
て説明する。図45(a)は生成直後のプログラム単位
のチェック条件表の例であり、図45(b)は修正後の
プログラム単位のチェック条件表の例である。図46
(a)は生成直後の関連チェック条件表の例であり、図
46(b)は修正後の関連チェック条件表の例である。
図47(a)は生成直後のプログラム単位の編集条件表
の例であり、図47(b)は修正後の編集条件表の例で
ある。
【0137】ここでプログラム単位の編集条件表(図4
7)をとりあげてその修正内容を詳細に説明する。図4
7(b)の第3行3722では、キーワードを「DAT
E」から空白に変更し、それに伴い編集方法を「YY.
MM.DDの形式に…」から「そのまま転送する」に変
更した(この操作を修正1とする)。これはデータ項目
「NYUSYA−YMD」に対しては出力編集時にはデ
ータに何も加工も施さないことを意味する。また図47
(b)では、図47(a)に示す第4行3712を削除
した(同修正2とする)。これはデータ項目「SYOK
UI−CD」を出力媒体から削除することを意味する。
第4行3723では、出力項目「SIKYU−GK」の
属性を「Z,ZZZ,ZZ9」から「Z,ZZ9」に変
更した。さらにキーワードを空白から「COMP(SI
KYU−GK/1000)」にし、それに伴い編集方法
を「千円単位でZ,ZZ9の形式に編集する」とした
(同修正3とする)。これは「SIKYU−GK」を出
力する際には1000で割った値を出力するという出力
編集処理を新たに定義するものである。
7)をとりあげてその修正内容を詳細に説明する。図4
7(b)の第3行3722では、キーワードを「DAT
E」から空白に変更し、それに伴い編集方法を「YY.
MM.DDの形式に…」から「そのまま転送する」に変
更した(この操作を修正1とする)。これはデータ項目
「NYUSYA−YMD」に対しては出力編集時にはデ
ータに何も加工も施さないことを意味する。また図47
(b)では、図47(a)に示す第4行3712を削除
した(同修正2とする)。これはデータ項目「SYOK
UI−CD」を出力媒体から削除することを意味する。
第4行3723では、出力項目「SIKYU−GK」の
属性を「Z,ZZZ,ZZ9」から「Z,ZZ9」に変
更した。さらにキーワードを空白から「COMP(SI
KYU−GK/1000)」にし、それに伴い編集方法
を「千円単位でZ,ZZ9の形式に編集する」とした
(同修正3とする)。これは「SIKYU−GK」を出
力する際には1000で割った値を出力するという出力
編集処理を新たに定義するものである。
【0138】なおプログラム仕様書ライブラリ中のプロ
グラム仕様書の修正については、プログラム仕様書を図
44〜図47に示す通り単純な表のイメージで格納する
ため、専用エディタを用いることなしに汎用の表計算用
ソフトウェアや文書作成用ソフトウェアを用いて行うこ
ともできる。さらにプログラム仕様書を生成した装置群
A(108)とは別の装置である装置群B(118)上
に転送し、装置群B上で汎用の表計算用ソフトウェアや
文書作成用ソフトウェアを用いて編集を行うことも可能
である。
グラム仕様書の修正については、プログラム仕様書を図
44〜図47に示す通り単純な表のイメージで格納する
ため、専用エディタを用いることなしに汎用の表計算用
ソフトウェアや文書作成用ソフトウェアを用いて行うこ
ともできる。さらにプログラム仕様書を生成した装置群
A(108)とは別の装置である装置群B(118)上
に転送し、装置群B上で汎用の表計算用ソフトウェアや
文書作成用ソフトウェアを用いて編集を行うことも可能
である。
【0139】次に図9を用いてソフトウェア部品逆生成
215の手順について説明する。本実施例で言う逆生成
とは、修正が加えられたプログラム仕様書を基にこれの
情報元であるデータ項目部品を書き換え、プログラム仕
様書の修正内容を反映させることを言う。本実施例のソ
フトウェア部品逆生成215は、プログラム処理概要図
を入力し(ステップ701)、プログラム定義書を対象
として逆生成する(ステップ702)。次にプログラム
単位のチェック条件表を入力し(ステップ703)、デ
ータ項目辞書及びデータ定義書を対象として逆生成を行
う(ステップ704)。次に関連チェック条件表を入力
し(ステップ705)、データ項目辞書、関連チェック
定義書及びデータ定義書を対象として逆生成を行う(ス
テップ706)。次にプログラム単位の編集条件表を入
力し(ステップ707)、データ項目辞書及びデータ定
義書を対象として逆生成を行う(ステップ708)。
215の手順について説明する。本実施例で言う逆生成
とは、修正が加えられたプログラム仕様書を基にこれの
情報元であるデータ項目部品を書き換え、プログラム仕
様書の修正内容を反映させることを言う。本実施例のソ
フトウェア部品逆生成215は、プログラム処理概要図
を入力し(ステップ701)、プログラム定義書を対象
として逆生成する(ステップ702)。次にプログラム
単位のチェック条件表を入力し(ステップ703)、デ
ータ項目辞書及びデータ定義書を対象として逆生成を行
う(ステップ704)。次に関連チェック条件表を入力
し(ステップ705)、データ項目辞書、関連チェック
定義書及びデータ定義書を対象として逆生成を行う(ス
テップ706)。次にプログラム単位の編集条件表を入
力し(ステップ707)、データ項目辞書及びデータ定
義書を対象として逆生成を行う(ステップ708)。
【0140】次に逆生成結果について説明する。図51
〜図57には、前述の修正後のプログラム仕様書をもと
に逆生成を行った場合に、逆生成前と逆生成後とで定義
内容に変更があったもののみを示す。図51〜図55は
逆生成後のデータ項目辞書のデータ項目部品の例であ
り、逆生成前の定義例は図11〜図15である。図56
は逆生成後の関連チェック定義部品の例であり、逆生成
前の定義例は図35である。図57は逆生成後のデータ
定義書のうち、「KYLST」に対する帳票仕様書の例
であり、これの逆生成前の定義例は図31(a)であ
る。
〜図57には、前述の修正後のプログラム仕様書をもと
に逆生成を行った場合に、逆生成前と逆生成後とで定義
内容に変更があったもののみを示す。図51〜図55は
逆生成後のデータ項目辞書のデータ項目部品の例であ
り、逆生成前の定義例は図11〜図15である。図56
は逆生成後の関連チェック定義部品の例であり、逆生成
前の定義例は図35である。図57は逆生成後のデータ
定義書のうち、「KYLST」に対する帳票仕様書の例
であり、これの逆生成前の定義例は図31(a)であ
る。
【0141】前述の修正済みのプログラム単位の編集条
件表(図47(b))の例に基いて逆生成の具体的手順
を説明する。
件表(図47(b))の例に基いて逆生成の具体的手順
を説明する。
【0142】修正1ではキーワードを空白3714に変
更している。この場合逆生成機能はまず編集区分371
5を参照し、これが「出力編集」であるから入力項目3
710を参照し入力項目「NYUSYA−YMD」37
16を得る。それに対応するデータ項目辞書のデータ項
目部品が逆生成の対象となる。逆生成後のデータ項目辞
書のデータ項目部品(図53)の入力編集定義部390
1に示すようにキーワードを空白に変更している。
更している。この場合逆生成機能はまず編集区分371
5を参照し、これが「出力編集」であるから入力項目3
710を参照し入力項目「NYUSYA−YMD」37
16を得る。それに対応するデータ項目辞書のデータ項
目部品が逆生成の対象となる。逆生成後のデータ項目辞
書のデータ項目部品(図53)の入力編集定義部390
1に示すようにキーワードを空白に変更している。
【0143】図47(b)では修正2によりデータ項目
「SYOKUI−CD」3712を出力項目から削除し
た。この場合逆生成機能は、該プログラムの出力媒体で
ある帳票の帳票定義部品「KYLST」(図31
(a))から「SYOKUI−CD」を削除する。逆生
成後の帳票定義部品(図57)の帳票レイアウト定義部
4101に示す通りデータ項目「SYOKUI−CD」
が削除されている。
「SYOKUI−CD」3712を出力項目から削除し
た。この場合逆生成機能は、該プログラムの出力媒体で
ある帳票の帳票定義部品「KYLST」(図31
(a))から「SYOKUI−CD」を削除する。逆生
成後の帳票定義部品(図57)の帳票レイアウト定義部
4101に示す通りデータ項目「SYOKUI−CD」
が削除されている。
【0144】修正3では修正1と同様にキーワードを変
更している。この場合も編集区分は「出力編集」372
0であるから入力項目「SIKYU−GK」3721を
取得し、それに対応するデータ項目辞書のデータ項目部
品(図55)の出力編集定義部が逆生成の対象となる。
修正後のキーワード3706は「COMP(SIKYU
−GK/1000)」3719であるから、「SIKY
U−GK」に対するデータ項目辞書のデータ項目部品の
出力編集のキーワード3902を更新する。また修正3
ではさらに出力項目「SIKYU−GK」3717の属
性3718を変更している。この場合出力媒体である帳
票の帳票定義部品「KYLST」(図31(a))にお
ける該データ項目の属性を変更する。逆生成後の帳票定
義部品(図57)の帳票レイアウト定義部の4102に
示す通りに変更内容が反映される。
更している。この場合も編集区分は「出力編集」372
0であるから入力項目「SIKYU−GK」3721を
取得し、それに対応するデータ項目辞書のデータ項目部
品(図55)の出力編集定義部が逆生成の対象となる。
修正後のキーワード3706は「COMP(SIKYU
−GK/1000)」3719であるから、「SIKY
U−GK」に対するデータ項目辞書のデータ項目部品の
出力編集のキーワード3902を更新する。また修正3
ではさらに出力項目「SIKYU−GK」3717の属
性3718を変更している。この場合出力媒体である帳
票の帳票定義部品「KYLST」(図31(a))にお
ける該データ項目の属性を変更する。逆生成後の帳票定
義部品(図57)の帳票レイアウト定義部の4102に
示す通りに変更内容が反映される。
【0145】このようにソフトウェア部品逆生成215
は、プログラム仕様書生成214の手順とは逆の手順で
プログラム仕様書ライブラリ217から修正のあったソ
フトウェア部品を特定し、プログラム仕様書ライブラリ
の内容を基にソフトウェア部品を更新する。プログラム
処理概要図、プログラム単位のチェック条件表及び関連
チェック条件表を基とした場合についてもプログラム単
位の編集条件表と同様にソフトウェア部品の逆生成を行
うことができる。
は、プログラム仕様書生成214の手順とは逆の手順で
プログラム仕様書ライブラリ217から修正のあったソ
フトウェア部品を特定し、プログラム仕様書ライブラリ
の内容を基にソフトウェア部品を更新する。プログラム
処理概要図、プログラム単位のチェック条件表及び関連
チェック条件表を基とした場合についてもプログラム単
位の編集条件表と同様にソフトウェア部品の逆生成を行
うことができる。
【0146】
【発明の効果】本発明によれば、ユーザ固有の業務によ
く適合するような形で標準データ項目辞書に登録されて
いるデータ項目部品を新しいソフトウェア開発に再利用
できるという効果がある。またプログラム仕様書を変更
したときこれに連動して関連するソフトウェア部品を変
更できるという効果がある。さらにソフトウェア部品と
プログラム仕様とを関連付けるようなチェックリストを
生成できるので、プログラムを作成する前の設計段階で
不良検出を行えるという効果がある。
く適合するような形で標準データ項目辞書に登録されて
いるデータ項目部品を新しいソフトウェア開発に再利用
できるという効果がある。またプログラム仕様書を変更
したときこれに連動して関連するソフトウェア部品を変
更できるという効果がある。さらにソフトウェア部品と
プログラム仕様とを関連付けるようなチェックリストを
生成できるので、プログラムを作成する前の設計段階で
不良検出を行えるという効果がある。
【図1】実施例の開発支援装置のハードウェア構成を示
す図である。
す図である。
【図2】実施例の開発支援装置の機能的なブロック図で
ある。
ある。
【図3】データ項目辞書生成の手順を示すフローチャー
トである。
トである。
【図4】データ項目辞書生成の手順を示すフローチャー
トである。
トである。
【図5】データ項目辞書生成の手順を示すフローチャー
トである。
トである。
【図6】条件表生成の手順を示すフローチャートであ
る。
る。
【図7】プログラム仕様書生成の手順を示すフローチャ
ートである。
ートである。
【図8】プログラム生成の手順を示すフローチャートで
ある。
ある。
【図9】ソフトウェア部品逆生成の手順を示すフローチ
ャートである。
ャートである。
【図10】本実施例の説明に用いる業務プログラム例を
示す図である。
示す図である。
【図11】データ項目辞書の定義例を示す図である。
【図12】データ項目辞書の定義例を示す図である。
【図13】データ項目辞書の定義例を示す図である。
【図14】データ項目辞書の定義例を示す図である。
【図15】データ項目辞書の定義例を示す図である。
【図16】標準データ項目辞書の定義例を示す図であ
る。
る。
【図17】データ項目日本語名称テーブルの定義例を示
す図である。
す図である。
【図18】標準データ項目日本語名称テーブルの定義例
を示す図である。
を示す図である。
【図19】標準データ項目辞書の検索方法例を示す図で
ある。
ある。
【図20】生成したデータ項目辞書例を示す図である。
【図21】メッセージテーブルの定義例を示す図であ
る。
る。
【図22】標準データ項目辞書を検索する場合の知識ベ
ースの定義例を示す図である。
ースの定義例を示す図である。
【図23】標準データ項目辞書を検索する場合の知識ベ
ースの定義例を示す図である。
ースの定義例を示す図である。
【図24】標準データ項目辞書を検索する場合の知識ベ
ースの定義例を示す図である。
ースの定義例を示す図である。
【図25】知識ベースを用いた標準データ項目辞書の検
索方法例を示す図である。
索方法例を示す図である。
【図26】ユーザ仕様情報レコードの定義例を示す図で
ある。
ある。
【図27】ユーザ仕様情報を反映してデータ項目辞書を
生成する場合の知識ベース例を示す図である。
生成する場合の知識ベース例を示す図である。
【図28】ユーザ仕様情報を反映してデータ項目辞書を
生成する場合の知識ベース例を示す図である。
生成する場合の知識ベース例を示す図である。
【図29】ユーザ仕様情報を反映してデータ項目辞書を
生成する場合の知識ベース例を示す図である。
生成する場合の知識ベース例を示す図である。
【図30】ユーザ仕様情報と知識ベースを用いたデータ
項目辞書生成方法例を示す図である。
項目辞書生成方法例を示す図である。
【図31】帳票定義部品の定義例を示す図である。
【図32】ファイル定義部品およびレコード定義部品の
定義例を示す図である。
定義例を示す図である。
【図33】データ定義書単位のチェック条件表の出力例
を示す図である。
を示す図である。
【図34】データ定義書単位の編集条件表の出力例を示
す図である。
す図である。
【図35】関連チェック処理定義部品の定義例を示す図
である。
である。
【図36】プログラム定義部品の定義例を示す図であ
る。
る。
【図37】標準パターン部品の例を示す図である。
【図38】標準機能説明部品の例を示す図である。
【図39】プログラム処理概要図の出力例を示す図であ
る。
る。
【図40】プログラム機能説明図の出力例を示す図であ
る。
る。
【図41】プログラム単位のチェック条件表の出力例を
示す図である。
示す図である。
【図42】関連チェック条件表の出力例を示す図であ
る。
る。
【図43】プログラム単位の編集条件表の出力例を示す
図である。
図である。
【図44】プログラム処理概要図の格納形式例を示す図
である。
である。
【図45】プログラム単位のチェック条件表の格納形式
例を示す図である。
例を示す図である。
【図46】関連チェック条件表の格納形式例を示す図で
ある。
ある。
【図47】プログラム単位の編集条件表の格納形式例を
示す図である。
示す図である。
【図48a】プログラム生成機能によるソースプログラ
ム展開例(左側)を示す図である。
ム展開例(左側)を示す図である。
【図48b】プログラム生成機能によるソースプログラ
ム展開例(右側)を示す図である。
ム展開例(右側)を示す図である。
【図49】プログラム生成機能によるソースプログラム
展開例を示す図である。
展開例を示す図である。
【図50a】プログラム生成機能によるソースプログラ
ム展開例(左側)を示す図である。
ム展開例(左側)を示す図である。
【図50b】プログラム生成機能によるソースプログラ
ム展開例(右側)を示す図である。
ム展開例(右側)を示す図である。
【図51】逆生成後におけるデータ項目辞書の定義例を
示す図である。
示す図である。
【図52】逆生成後におけるデータ項目辞書の定義例を
示す図である。
示す図である。
【図53】逆生成後におけるデータ項目辞書の定義例を
示す図である。
示す図である。
【図54】逆生成後におけるデータ項目辞書の定義例を
示す図である。
示す図である。
【図55】逆生成後におけるデータ項目辞書の定義例を
示す図である。
示す図である。
【図56】逆生成後における関連チェック定義部品の定
義例を示す図である。
義例を示す図である。
【図57】逆生成後における帳票定義部品の定義例を示
す図である。
す図である。
201・・・データ項目日本語名称テーブル、202・
・・標準データ項目辞書、203・・・知識ベース、2
04・・・ユーザ仕様情報、205・・・データ項目辞
書生成、206・・・メッセージファイル、207・・
・データ項目辞書、208・・・関連チェック定義書、
209・・・データ定義書、210・・・プログラム定
義書、211・・・標準パターンライブラリ、212・
・・標準機能説明ライブラリ、213・・・条件表生
成、214・・・プログラム仕様書生成、215・・・
ソフトウェア部品逆生成、216・・・プログラム生
成、217・・・プログラム仕様書ライブラリ、218
・・・ソースプログラムライブラリ、219・・・条件
表、220・・・プログラム仕様書、221・・・プロ
グラム仕様書編集
・・標準データ項目辞書、203・・・知識ベース、2
04・・・ユーザ仕様情報、205・・・データ項目辞
書生成、206・・・メッセージファイル、207・・
・データ項目辞書、208・・・関連チェック定義書、
209・・・データ定義書、210・・・プログラム定
義書、211・・・標準パターンライブラリ、212・
・・標準機能説明ライブラリ、213・・・条件表生
成、214・・・プログラム仕様書生成、215・・・
ソフトウェア部品逆生成、216・・・プログラム生
成、217・・・プログラム仕様書ライブラリ、218
・・・ソースプログラムライブラリ、219・・・条件
表、220・・・プログラム仕様書、221・・・プロ
グラム仕様書編集
Claims (5)
- 【請求項1】データ項目についてその日本語名称、属
性、チェック処理、入力編集処理及び出力編集処理を標
準化して定義するソフトウェア部品をデータ項目部品と
し、該データ項目部品を複数個有する標準データ項目辞
書と、 実際の業務に使用されるデータ項目の日本語名称であっ
て上記の標準化された日本語名称とその修飾語とから構
成されるデータ項目日本語名称を複数個有するテーブル
手段と、 該データ項目日本語名称に基づいて該標準データ項目辞
書を検索し対応するデータ部品を抽出し、該データ項目
日本語名称が付され該属性、チェック処理、入力編集処
理及び出力編集処理を継承するデータ項目部品を生成す
るデータ項目辞書の生成手段と、 プログラムの名称及び該プログラムで使用するファイル
を定義するプログラム定義書と、 該ファイルに格納されるレコードの構成を定義するデー
タ定義書と、 該プログラム定義書、該データ定義書及び該データ項目
辞書を参照することにより、該プログラムが使用する該
ファイルに格納されるレコードについて該レコードに含
まれる各データ項目の該データ項目日本語名称、属性、
チェック処理、入力編集処理及び出力編集処理を記述す
るプログラム仕様書の生成手段と、 標準化されたプログラムをプログラムの標準パターンと
し、該標準パターンを複数個格納する標準パターンライ
ブラリと、 該標準パターン、該プログラム仕様書及びデータ定義書
を参照することにより、該標準パターンにプログラム名
称、ファイル定義、レコード定義、データ項目及び該デ
ータ項目の日本語名称、属性、チェック処理、入力編集
処理及び出力編集処理を埋め込んでプログラムを生成す
る手段とを有することを特徴とするデータ項目部品を利
用するプログラム開発支援装置。 - 【請求項2】該プログラム開発支援装置は、さらに該デ
ータ定義書と該データ項目辞書とを参照して特定のファ
イルの特定のレコードに含まれるデータ項目ごとにチェ
ック処理を表の形式で作成するチェック条件表生成手段
を設けたことを特徴とする請求項1記載のデータ項目部
品を利用するプログラム開発支援装置。 - 【請求項3】該プログラム開発支援装置は、さらに該プ
ログラム仕様書の内容に更新、追加及び削除を行う編集
手段を設けたことを特徴とする請求項1記載のデータ項
目部品を利用するプログラム開発支援装置。 - 【請求項4】該プログラム開発支援装置は、さらに該編
集手段によって編集された該プログラム仕様書に基づい
て該データ項目辞書、該プログラム定義書及び該データ
定義書の該当する内容を修正するソフトウェア部品の逆
生成手段を設けたことを特徴とする請求項3記載のデー
タ項目部品を利用するプログラム開発支援装置。 - 【請求項5】データ項目についてその日本語名称、属
性、チェック処理、入力編集処理及び出力編集処理を定
義するソフトウェア部品をデータ項目部品とし、該デー
タ項目部品を複数個有するデータ項目辞書と、 特定のプログラムで使用されるファイルについて該ファ
イルに格納されるレコードの構成を定義するデータ定義
書と、 該データ定義書と該データ項目辞書とを参照して特定の
ファイルの特定のレコードに含まれるデータ項目ごとに
チェック処理を表の形式で作成するチェック条件表生成
手段とを設けたことを特徴とするプログラム開発支援装
置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31467794A JP3345522B2 (ja) | 1994-12-19 | 1994-12-19 | データ項目部品を利用するプログラム開発支援装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31467794A JP3345522B2 (ja) | 1994-12-19 | 1994-12-19 | データ項目部品を利用するプログラム開発支援装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08171486A true JPH08171486A (ja) | 1996-07-02 |
JP3345522B2 JP3345522B2 (ja) | 2002-11-18 |
Family
ID=18056227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP31467794A Expired - Fee Related JP3345522B2 (ja) | 1994-12-19 | 1994-12-19 | データ項目部品を利用するプログラム開発支援装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3345522B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11102365A (ja) * | 1997-09-26 | 1999-04-13 | Fujitsu Ltd | 業務プログラム作成支援装置及びプログラム記憶媒体 |
JP2007041676A (ja) * | 2005-08-01 | 2007-02-15 | Canon Software Inc | プログラム生成装置およびプログラム生成方法およびプログラムおよび記録媒体 |
JP2008181208A (ja) * | 2007-01-23 | 2008-08-07 | Nec Corp | ジェネレータサービス提供システム、設計情報の再利用・蓄積方法及びジェネレータサービス用プログラム |
-
1994
- 1994-12-19 JP JP31467794A patent/JP3345522B2/ja not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11102365A (ja) * | 1997-09-26 | 1999-04-13 | Fujitsu Ltd | 業務プログラム作成支援装置及びプログラム記憶媒体 |
JP2007041676A (ja) * | 2005-08-01 | 2007-02-15 | Canon Software Inc | プログラム生成装置およびプログラム生成方法およびプログラムおよび記録媒体 |
JP2008181208A (ja) * | 2007-01-23 | 2008-08-07 | Nec Corp | ジェネレータサービス提供システム、設計情報の再利用・蓄積方法及びジェネレータサービス用プログラム |
Also Published As
Publication number | Publication date |
---|---|
JP3345522B2 (ja) | 2002-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6098061A (en) | Computer system for interactive help using human-understandable knowledge and computer-understandable knowledge | |
US5898872A (en) | Software reconfiguration engine | |
EP0475964B1 (en) | Document generation apparatus and methods | |
US7953651B2 (en) | Validating updated business rules | |
US7783637B2 (en) | Label system-translation of text and multi-language support at runtime and design | |
US20230409314A1 (en) | Method and system for software application optimization using natural language-based queries | |
CN110543303A (zh) | 一种可视化业务平台 | |
US6698010B1 (en) | System, method and computer program product for automatic generation of data processing program | |
JP3186117B2 (ja) | データ中心型ソフトウエア部品によるプログラム自動生成システム | |
JP3577400B2 (ja) | システム設計装置及びデータウエアハウス設計システム | |
JP3345522B2 (ja) | データ項目部品を利用するプログラム開発支援装置 | |
US20080077641A1 (en) | System and method for editing contract clauses in static web pages | |
JPH1097417A (ja) | プログラム組立装置及び記憶媒体 | |
Yu et al. | Metadata management system: design and implementation | |
US6453318B1 (en) | Control apparatus of structured information and method of controlling the information | |
JP3516843B2 (ja) | データベースアクセス方法 | |
JP3464159B2 (ja) | テスト仕様書作成装置およびそのプログラムを格納した記憶媒体 | |
JPH113357A (ja) | 技術情報管理装置 | |
JP3050467B2 (ja) | データ項目辞書生成方法 | |
Jennings | Special Edition Using Microsoft Access 2002 | |
US8839097B2 (en) | System and method for information encapsulation for providing multiple deliverable formats from one information source | |
KR100656559B1 (ko) | Bibd 방법론을 이용하는 프로그램 자동 개발 장치 | |
JPH04172529A (ja) | データ中心型ソフトウエア部品によるプログラム自動生成方式 | |
JPH07146785A (ja) | プログラム自動生成方法および装置 | |
JPH01147621A (ja) | プログラム自動生成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |