JPH04172529A - Automatic program generating system by data oriented software parts - Google Patents

Automatic program generating system by data oriented software parts

Info

Publication number
JPH04172529A
JPH04172529A JP29969790A JP29969790A JPH04172529A JP H04172529 A JPH04172529 A JP H04172529A JP 29969790 A JP29969790 A JP 29969790A JP 29969790 A JP29969790 A JP 29969790A JP H04172529 A JPH04172529 A JP H04172529A
Authority
JP
Japan
Prior art keywords
program
software
data
input
data item
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP29969790A
Other languages
Japanese (ja)
Inventor
Yosuke Morioka
森岡 洋介
Osamu Ono
大野 治
Naoki Hashimoto
直樹 橋本
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP29969790A priority Critical patent/JPH04172529A/en
Publication of JPH04172529A publication Critical patent/JPH04172529A/en
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

PURPOSE:To enhance the productivity and reliability of software by setting up general criteria for preparing software parts without depending on individuality of software designers and features of application work and by managing software parts in a format conforming with the criteria. CONSTITUTION:Using input unit 205 and display unit 204, a software part in unit of data item is registered a dictionary on an external storage unit 206 by a dictionary oriented editor 102 or corrected. Here, the data item used represents the minimum unit of data having substantial application meaning such as person's name and birth date. Program generating tool 107 inputs a program specification library 104, data specification library 105, standard pattern library 106, and dictionary 101 which are all on the external storage unit 206, and prepares a generation objective program and outputs the program to the source library 108 on the external storage unit 206.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、ソフトウェアの生産性向上に係り。[Detailed description of the invention] [Industrial application field] The present invention relates to improving software productivity.

特に既存ソフトウェアを部品化し、これらの部品からプ
ログラムを自動生成することにより新規ソフトウェア開
発を効率化するのに好適なソフトウェア開発支援方法に
関する。
In particular, the present invention relates to a software development support method suitable for streamlining new software development by converting existing software into components and automatically generating programs from these components.

〔従来の技術〕[Conventional technology]

ソフトウェア生産性を向上するための有力な方法のとひ
つに既存のソフトウェアを再利用して新規ソフトウェア
を開発する方法がある。
One of the effective methods for improving software productivity is to reuse existing software and develop new software.

この既存のソフトウェアを再利用して新規ソフトウェア
を開発する場合、業務システムレベルや、プログラムレ
ベルで再利用を行い、プログラマが既存ソフトウェアの
仕様書やソースコードを解析し、変更を行うのが一般的
である。
When developing new software by reusing existing software, it is common to reuse it at the business system level or program level, and the programmer analyzes the existing software's specifications and source code and makes changes. It is.

しかし、同種業務のソフトウェアにおいてもその要求仕
様は利用者によってまちまちであり、上記のような再利
用の方法では、仕様書やソースコードからだけでは変更
箇所を特定することが難しい、ひとつのソフトウェアに
対し複数利用者の要求仕様の相違に伴う変更が加わって
いくためソフトウェア保守性が劣化するなどの欠点があ
った。
However, even for software for the same type of business, the required specifications vary depending on the user, and with the above reuse method, it is difficult to identify changes in a single piece of software just from the specifications and source code. On the other hand, it had drawbacks such as deterioration in software maintainability as changes were made due to differences in the required specifications of multiple users.

このような欠点のために、同種業務のソフトウェアの開
発においてさえ、既存ソフトウェアの再利用を断念し、
全く新規にソフトウェアを開発することが多く、生産性
向上を妨げていた。
Because of these shortcomings, even in the development of software for similar tasks, people give up on reusing existing software, and
In many cases, completely new software was developed, which hindered productivity improvement.

この問題を解決するひとつの方法として、ソフトウェア
をその機能に着目して細分化することにより部品化して
おき、この部品とプログラムとの対応づけを定義するこ
とにより新たなプログラムを自動生成する方法がある。
One way to solve this problem is to divide software into components by focusing on their functions, and then automatically generate new programs by defining the correspondence between these components and programs. be.

この方法によりソフトウェアを小規模な部品群に分割し
、新規ソフトウェアを開発する際に、既存ソフトウェア
を部品レベルで再利用することが可能となり、ソフトウ
ェアの適用業務の違いや、要求仕様の違し1に対して部
品の取捨選択、修正、追加により対応することができる
ようになった。
This method makes it possible to divide software into small groups of parts and reuse existing software at the part level when developing new software, making it possible to avoid differences in software application tasks and required specifications. It is now possible to respond by selecting, modifying, and adding parts.

なおこの種の技術として関連するものには、例えば第3
0回(昭和60年後期)情報処理全国大会講演論文集(
I) p459〜460 rEAGLEl:おけるプロ
グラム部品合成実現方式j等がある。
Related technologies of this type include, for example, the third technology.
0th (late 1985) Information Processing National Conference Lecture Proceedings (
I) p459-460 rEAGLEL: There is a method for realizing program component synthesis in p459-460.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

前記の従来技術はソフトウェアを部品化し、それを合成
することによりプログラムを自動生成するものであり、
ソフトウェアの生産性向上、信頼性向上のために有力な
技術である。
The above-mentioned conventional technology automatically generates a program by converting software into components and composing them.
It is a powerful technology for improving software productivity and reliability.

しかし、前記の従来技術ではソフトウェアの部品化を機
能の細分化によって行っているため部品化を行う際に、
どのような観点で機能を細分化するか、どのレベルまで
を一つの部品にするかなどについて明確な基準を設ける
ことが難しく、部品の設計者によりソフトウェアの分割
方法がまちまちであった。
However, in the above-mentioned conventional technology, the software is made into components by subdividing the functions, so when making the software into components,
It is difficult to establish clear standards regarding how functions should be subdivided and what level should be included in a single component, and the methods of dividing software have varied depending on component designers.

また、目的の業務プログラムと部品との対応づけをプロ
グラム1本1本について、設計者あるいはプログラマが
定義しなければならないため、生産性向上および信頼性
向上が十分に図れなかった。
Further, since the designer or programmer must define the correspondence between the target business program and the component for each program, productivity and reliability cannot be sufficiently improved.

本発明の第1の目的は、ソフトウェアの部品化゛にあた
って設計者の個性や適用業務の特質に依存しない一定の
基準を設け、さらに部品をこの基準に合致した形式で管
理する方法を確立することにより、ソフトウェアの部品
をIll!4!I化し、既存ソフトウェアの再利用を容
易にし、ひいてはソフトウェアの生産性向上および信頼
性向上を図ることにある。
The first purpose of the present invention is to establish a certain standard that does not depend on the individuality of the designer or the characteristics of the application when converting software into components, and to establish a method for managing components in a format that conforms to this standard. Ill! software components 4! The objective is to make it easier to reuse existing software, and to improve the productivity and reliability of software.

本発明の第2の目的は、業務プログラムと部品との対応
づけを設計者あるいはプログラマが定義することなしに
目的の業務プログラムを自動生成することを可能とし、
ひいてはソフトウェアの生産性向上および信頼性向上を
図ることにある。
A second object of the present invention is to enable automatic generation of a target business program without requiring a designer or programmer to define the correspondence between business programs and components;
The goal is to improve the productivity and reliability of software.

〔課題を解決するための手段〕[Means to solve the problem]

上記の第1の目的を達成するため1本発明のデータ中心
型ソフトウェア部品によるプログラム自動生成方式では
、ソフトウェア部品をデータ項目単位に、さらに各デー
タ項目に対する処理を予めいくつかの種類に分けて定義
しておきこれをディクショナリとよぶ専用の構造を持つ
ファイルに格納して管理することを特徴とする。
In order to achieve the above first objective, 1. In the automatic program generation method using data-centric software components of the present invention, software components are defined in data item units, and the processing for each data item is divided into several types in advance. It is characterized by storing and managing this information in a file with a dedicated structure called a dictionary.

また、データ項目単位の処理に含まれない1画面、帳票
、ファイル等の処理プログラムの制御部分を、その制御
構造の特質に着目していくつかの種類に分け、業務個別
処理をそれ自身に持たない標準パターンとして部品化す
ることを特徴とする。
In addition, the control part of the processing program for one screen, form, file, etc., which is not included in the processing of each data item, is divided into several types based on the characteristics of the control structure, and each control part has its own task-specific processing. It is characterized by being made into parts as a standard pattern.

上記の第2の目的を達成するため、本発明のデータ中心
型ソフトウェア部品によるプログラム自動生成方式では
、生成対象の業務プログラムと上記のデータ項目単位の
部品との対応を定義することなく、該プログラムの入出
力媒体中に存在するデータ項目の名称を基に、使用すべ
き部品を選択しこれを標準パターンと合成することによ
り該プログラムを自動生成することを特徴とする。
In order to achieve the above second objective, in the automatic program generation method using data-centric software components of the present invention, the program is automatically generated without defining the correspondence between the business program to be generated and the above-mentioned data item-based components. The program is characterized in that the program is automatically generated by selecting the parts to be used based on the names of data items existing in the input/output medium and composing them with a standard pattern.

〔作用〕[Effect]

第1の目的を達成するため1本発明はソフトウェア部品
をデータ項目単位に定義することに定め、その部品の中
にデータ項目に対する処理をいくつかの種類に分けて定
義する。またプログラム制御部分を標準パターンとして
部品化し、データ項目単位の部品と完全に分離する。こ
のことにより、ソフトウェアの部品の標準化が可能とな
り、既存ソフトウェアの再利用を容易にでき、ひいては
ソフトウェアの生産性向上および信頼性向上を図ること
ができる。
In order to achieve the first object, the present invention defines a software component in units of data items, and defines several types of processing for data items within the component. In addition, the program control part is made into parts as a standard pattern, and completely separated from the parts for each data item. This makes it possible to standardize software components, facilitate the reuse of existing software, and improve the productivity and reliability of software.

第2の目的を達成するため、本発明は生成対象の業務プ
ログラムとデータ項目単位の部品との対応づけをプログ
ラム自動生成ツールで行うようにする。このことにより
、設計者あるいはプログラマがこ・れらの対応を定義す
ること必要がなくなり、ソフトウェアの生産性向上およ
び信頼性向上を図ることができる。
In order to achieve the second object, the present invention uses an automatic program generation tool to associate business programs to be generated with parts in units of data items. This eliminates the need for the designer or programmer to define these correspondences, and it is possible to improve the productivity and reliability of the software.

〔実施例〕〔Example〕

以下、本発明の実施例を図を用いて詳細に説明する。 Embodiments of the present invention will be described in detail below with reference to the drawings.

第1図は本発明の実施例を実現するためのシステムの機
能構成図であり、第2図は本発明を実現する計算機の機
器構成であり、第3図はディクショナリの定義例であり
、第4図はプログラム生成の処理手順を示すフローチャ
ニドである。
Fig. 1 is a functional configuration diagram of a system for realizing an embodiment of the present invention, Fig. 2 is an equipment configuration of a computer for realizing the present invention, Fig. 3 is an example of dictionary definition, and Fig. FIG. 4 is a flowchart showing the processing procedure for program generation.

まず、第1図および第2図を用いて実施例におけるディ
クショナリ作惑手順およびプログラム生成手順について
説明する。
First, the dictionary manipulation procedure and program generation procedure in the embodiment will be explained using FIG. 1 and FIG. 2.

本実施例では入力装置205および表示装M2O4を用
いて、ディクショナリ専用エディタ102によりデータ
項目単位の部品を外部記憶装置206上のディクショナ
リに登録したり、修正したりする。
In this embodiment, the input device 205 and the display device M2O4 are used to register and modify components in units of data items in the dictionary on the external storage device 206 using the dictionary dedicated editor 102.

ここでデータ項目とは氏名、生年月日などといった業務
上意味を持つ最小単位のデータを指す。プログラム生成
ツール107は、同じく外部記憶装置206上にあるプ
ログラム仕様書ライブラリ104゜データ仕様書ライブ
ラリ105.標準パターンライブラリ106およびディ
クショナリ101を入力し、生成対象プログラムを生成
して外部記憶装置206上のソースライブラリ108に
出力する。
Here, the data item refers to the smallest unit of data that has business significance, such as name, date of birth, etc. The program generation tool 107 includes a program specification library 104, a data specification library 105. The standard pattern library 106 and dictionary 101 are input, a generation target program is generated, and the program is output to the source library 108 on the external storage device 206.

尚、ここでプログラム仕様書ライブラリ104は各プロ
グラムで使用する標準パターン名および入呂カフアイル
名、画面名、帳票名を定義しているライブラリであり、
データ仕様書ライブラリ105は各ファイル、画面、帳
票に関する定義情報を格納しているライブラリである。
Note that the program specification library 104 is a library that defines the standard pattern name, bath name, screen name, and form name used in each program.
The data specification library 105 is a library that stores definition information regarding each file, screen, and form.

。 つづいて第3図にもとづき本実施例においてソフトウェ
ア部品をデータ項目単位に管理するディクショナリ10
1の構造について説明する。
. Next, based on FIG. 3, a dictionary 10 for managing software components in units of data items in this embodiment is provided.
The structure of No. 1 will be explained.

ディクショナリ101中にはデータ項目名称に関する定
義、チェック条件、入力編集、出力編集の定義を格納す
る。ここでチェック条件、入力編集、および出力編集に
ついて説明する6第5図はデータ項目「年月日」に対す
るチェック条件、入力編集、出力編集を示したものであ
る。
The dictionary 101 stores definitions regarding data item names, check conditions, input editing, and output editing definitions. Here, checking conditions, input editing, and output editing will be explained.6 FIG. 5 shows checking conditions, input editing, and output editing for the data item "year, month, and day."

入力帳票502や入力画面503からの入力データ「H
2O1,05,03J N501)に対しデータの形式
が正しいかまた実際に存在する年月日であるかなどをチ
ェックする。このチェックの際にエラーでない条件を定
義するのがチェック条件である。
Input data “H” from input form 502 and input screen 503
2O1, 05, 03J N501), check whether the data format is correct and whether the date actually exists. Check conditions define the conditions under which no errors occur during this check.

チェックを行ったデータはデータベース506やファイ
ル507に格納する。本例では和暦で入力された年月日
を西暦に変換して格納を行っているが、このように外部
からの入力データ501をデータベース506やファイ
ル507に格納する形式508に変換する処理が入力編
集である。
The checked data is stored in a database 506 or a file 507. In this example, the date input in the Japanese calendar is converted to the Western calendar and stored, but the process of converting the input data 501 from the outside into the format 508 to be stored in the database 506 or file 507 is necessary. This is input editing.

つぎに出力編集はデータベース506やファイル507
のデータを出力帳票510や出力画面511に出力する
形式512に変換する処理のことである。
Next, output editing is done in database 506 and file 507.
This is the process of converting the data into a format 512 that is output to an output form 510 or an output screen 511.

本例では格納形式508の「年月日」を西暦から和暦に
変換し、更に元号を日本語に編集している。
In this example, the "Year Month Day" in the storage format 508 is converted from the Western calendar to the Japanese calendar, and the era name is further edited into Japanese.

再び第3図に戻って、本例ではデータ項目「年月日Jに
対する定義および「在庫量」に対する定義を示している
。301は「年月日」の記号項目名がrNENGAPI
Jであることを示畝303はデータの形式が英数字6桁
であることを定義し、304は「年月日」をチェックす
る際にはサブルーチンrPROGAJ を呼びだすこと
を示し、305は入力編集時、にはサブルーチンrPR
OGBJを呼びだすことを示し、同様に306は出力編
集時にrPROGcJを呼びだすことを定義している。
Returning to FIG. 3 again, this example shows the definition for the data item "year, month, day J" and the definition for "inventory amount". 301 is the symbol item name of "year, month, day" is rNENGAPI
303 indicates that the data format is 6 alphanumeric characters, 304 indicates that subroutine rPROGAJ is called when checking the "year, month, and day," and 305 indicates input editing. When subroutine rPR
This indicates that OGBJ is to be called, and 306 similarly defines that rPROGcJ is to be called during output editing.

これを第5図と比較するとステップ504で行う「年月
日」の形式チェックおよび実在日チェックをrPROG
AJの呼出しにより行い、ステップ505で行う和暦か
ら西暦の格納形式への変換をrPROGBJの呼出しに
より行い、ステップ509で行う西暦から和暦への変換
や日本語変換をrPROGcJの呼出しにより行うこと
を定義している。
Comparing this with FIG.
The conversion from the Japanese calendar to the Western calendar storage format performed in step 505 is performed by calling rPROGBJ, and the conversion from the Western calendar to the Japanese calendar and the Japanese language conversion performed in step 509 are performed by calling rPROGcJ. Defined.

もう一方の「在庫量」の定義では307は「在庫量」の
記号項目名がrZAIKOJであることを示し、309
は在庫量のデータ形式が数字10桁であることを示して
いる。310でrNUMERICJと記述しているのは
入力データが数字であることがチェック条件であること
を示している。
In the other definition of "inventory amount", 307 indicates that the symbolic item name of "inventory amount" is rZAIKOJ, and 309
indicates that the data format of the inventory amount is a 10-digit number. The description "rNUMERICJ" in 310 indicates that the check condition is that the input data is a number.

312は入力データを1000倍した結果をデータベー
ス506またはファイル507に格納することを定義し
ている。また、313は「在庫量」をデータベース50
6またはファイル507から出力帳票や出力画面に表示
する際には1000で割った結果を出力することを定義
している。
312 defines that the result of multiplying the input data by 1000 is to be stored in the database 506 or file 507. In addition, 313 stores the “inventory amount” in the database 50.
6 or file 507 to output the result divided by 1000 when displaying on the output form or output screen.

第4図はプログラム生成ツールにおけるプログラム生成
処理手順を示したものである。
FIG. 4 shows the program generation processing procedure in the program generation tool.

生成ツールはまず生成対象の業務プログラムで使用する
標準パターンを標準パターンライブラリ106から入力
する(ステップ401) 。
The generation tool first inputs a standard pattern used in the business program to be generated from the standard pattern library 106 (step 401).

尚、プログラム生成時にどの標準パターンを使用するか
はプログラム仕様書であらかじめ定義しておく。
Note that which standard pattern to use when generating a program is defined in advance in the program specifications.

第6図に標準パターンの例を示す0本例はファイルのチ
ェックを行う処理の標準パターンでありこのパターンは
入力ファイルを読み込んで入力ファイル上のデータのチ
ェックを行い、エラーのないデータを呂カフアイルに書
き出す処理を行うプログラムを生成する場合に使用する
。第6図の601が標準パターンであり、入出カフアイ
ルのオープン処理、クローズ処理および入力ファイルが
終わるまで入力ファイルの読み込みと出力ファイルの書
き出しを繰り返すなどファイルのチェックを行うプログ
ラムに共通した制御部分のみからなるプログラムスケル
トンである。
Figure 6 shows an example of a standard pattern. This example is a standard pattern for file checking processing. This pattern reads an input file, checks the data on the input file, and stores error-free data in the file. Used to generate a program that performs the process of writing to. 601 in Figure 6 is the standard pattern, which consists only of control parts common to programs that check files, such as opening and closing processing of input/output files, and repeating reading of input files and writing of output files until the input file is finished. This is the program skeleton.

そしてチェック処理602や入力編集処理603がプロ
グラム個別の業務処理であり5これらは標準パターンに
は含まず、プログラム生成ツールがディクショナリ10
1を用いて生成する部分である。
Check processing 602 and input editing processing 603 are program-specific business processing 5 and are not included in the standard pattern, and the program generation tool is the dictionary 10.
This is the part generated using 1.

入出力部品展開(ステップ402)では該プログラムの
プログラム仕様書で定義した入出カフアイルの名称をも
とにデータ仕様書ライブラリ105からの該ファイルの
定義情報入力を行い、該プログラムの入出力宣言部分の
ソースコードを生成し。
In input/output component development (step 402), the definition information of the file is input from the data specification library 105 based on the name of the input/output file defined in the program specifications of the program, and the input/output declaration part of the program is input. Generate source code.

これとステップ401で入力した標準パターンとを合成
する。
This and the standard pattern input in step 401 are synthesized.

第7図に標準パターン701に対する入出力部品の展開
方法を示す、プログラム生成ツールはプログラム仕様書
705で定義したファイル仕様名をもとにファイル仕様
書706を読み込み−またファイル仕様書706中のレ
コード仕様名をもとにレコード仕様書707を読み込み
、これらの情報から該プログラムの入出力環境定義70
2.ファイル記述703およびデータ記述704を生成
し、これと標準パターン701とを合成する。
FIG. 7 shows how to develop input/output components for the standard pattern 701. The program generation tool reads the file specification 706 based on the file specification name defined in the program specification 705 and records in the file specification 706. Read the record specification 707 based on the specification name, and use this information to create the input/output environment definition 70 for the program.
2. A file description 703 and a data description 704 are generated, and these and the standard pattern 701 are synthesized.

帳票印刷処理展開(ステップ404)は、該プログラム
がバッチ帳票を出力する標準パターンを使用している場
合に行い、該プログラムのプログラム仕様書で定義した
出力帳票の名称をもとにデータ仕様書ライブラリ105
から該当する帳票定義情報を取り出し、これから帳票編
集用作業領域および帳票畠力手続きを生成し、ステップ
401で入力した標準パターンと合成する。
Form printing processing development (step 404) is performed when the program uses a standard pattern for outputting batch forms, and is performed in the data specification library based on the name of the output form defined in the program specifications of the program. 105
The corresponding form definition information is extracted from the form, a form editing work area and a form processing procedure are generated from this information, and these are combined with the standard pattern input in step 401.

第8図は標準パターン801に対する帳票印刷処理展開
(ステップ404)について図示したものである。プロ
グラム生成ツールはプログラム仕様書808で定義した
帳票仕様書809を読み込み、これらの定義内容から該
帳票に関する入出力環境定義802.ファイル記述項8
03およびデータ記述項804を生成し、また帳票編集
用作業領域805〜806およびプログラム実行時に使
用するカウンタなどの作業領域807を生成し、これと
標準パターン801とを合成する。
FIG. 8 illustrates the development of the form printing process (step 404) for the standard pattern 801. The program generation tool reads the form specification 809 defined in the program specification 808, and uses the contents of these definitions to create the input/output environment definition 802. File description entry 8
03 and a data description item 804, and also generates work areas 805 to 806 for form editing and a work area 807 such as a counter used during program execution, and synthesizes these with the standard pattern 801.

チェック・編集処理展開(ステップ405)において、
ディクショナリ101に登録したデータ項目単位の部品
を入力し、該データ項目に対する処理を生成して、これ
と標準パターンとを合成する。この時該プログラムにど
の部品のどの処理を、標準パターンのどこに展開するか
は、第9図に示すようにして行う。第9図で9Ofは1
11!4!パターンである。また902はチェック処理
、903は入力編集処理である。プログラム仕様書90
4で定義している入キカファイルのファイル仕様書90
5〜906を参照し、さらにこの中のレコード仕様名も
とにレコード仕様書907〜908を参照する。レコー
ド仕様書上にあるデータ項目が該プログラムで処理する
データ項目である1本例ではrZAIKOJ(在庫量)
が入力ファイルに存在するためデータ項目「在庫量」に
対応する部品をディクショナリ101から読み込んでこ
れと標準パターンとを合成する。一方本例では該プログ
ラムで使用する標準パターンは「CHECKOol」と
いう第5図の場合と同じ標準パターンを使用している0
本パターンではチェック処理rERR−CHECK−P
ROCJ902および入力編集処理rINPUT−DA
TA−E D I T−PROCJ 903を持ってい
る。これよりプログラム生成ツールは「在庫量」の部品
で定義したチェック条件310からチェック処理を、入
力編集312から入力編集処理を生成する。
In the checking/editing processing development (step 405),
A component for each data item registered in the dictionary 101 is input, a process for the data item is generated, and this is combined with a standard pattern. At this time, which process of which part is to be developed in the program and where in the standard pattern is determined as shown in FIG. In Figure 9, 9Of is 1
11!4! It's a pattern. Further, 902 is a check process, and 903 is an input editing process. Program specifications 90
File specification 90 of the input file defined in 4.
5 to 906, and further refer to record specifications 907 to 908 based on the record specification names therein. In this example, the data item on the record specification is the data item processed by the program, rZAIKOJ (inventory amount).
exists in the input file, the component corresponding to the data item "inventory amount" is read from the dictionary 101 and combined with the standard pattern. On the other hand, in this example, the standard pattern used in the program is the same standard pattern as in the case of Figure 5 called "CHECKOol".
In this pattern, check processing rERR-CHECK-P
ROCJ902 and input editing processing rINPUT-DA
I have TA-EDIT-PROCJ 903. From this, the program generation tool generates a check process from the check condition 310 defined for the "inventory amount" part and an input edit process from the input edit 312.

さらにデータ項目に対する処理を展開する際には本例で
示すようにプログラム仕様書904で定義した接頭語を
それぞれのファイル上の項目名に付加する。第9図では
データ項目rZAIKOJ(在庫量)に対し入力ファイ
ル上の記号項目名はrIN−ZAIKOJ出カフアイル
上の記号項目名はrDATA−ZA工KO」とプログラ
ム生成時に決定している。このことによりデータ項目「
在庫量」に対する部品をそれが格納されるファイルから
独立させている。
Furthermore, when developing processing for a data item, the prefix defined in the program specification 904 is added to the item name on each file, as shown in this example. In FIG. 9, the symbolic item name on the input file for the data item rZAIKOJ (stock quantity) is rIN-ZAIKOJ, and the symbolic item name on the output file is rDATA-ZAKOKO'', which are determined at the time of program generation. This results in the data item “
The parts for "inventory quantity" are made independent of the file in which they are stored.

第4図に示すソースプログラム出力406では、以上の
処理により生成できた目的の業務プログラムをソースラ
イブラリに出力する。
In the source program output 406 shown in FIG. 4, the target business program generated by the above processing is output to the source library.

尚1本実施例ではバッチ処理のプログラムの例を挙げて
説明したがオンライン処理のプログラムについても同様
に生成が可能である。
Although this embodiment has been described using an example of a batch processing program, it is also possible to generate an online processing program in the same way.

〔発明の効果〕〔Effect of the invention〕

本発明は1以上に説明した処理手順を有するので、以下
に記載するような効果を有する。
Since the present invention includes one or more of the processing steps described above, it has the effects described below.

ソフトウェア部品をデータ項目単位に定義することに定
め、その部品の中にデータ項目に対する処理をいくつか
の種類に分けて定義し、これらを格納するディクショナ
リを開発したこと、またプログラム制御部分を標準パタ
ーンとして部品化し、データ項目単位の部品と完全に分
離したことにより、ソフトウェアの部品の標準化が可能
となり、既存ソフトウェアの再利用を容易にでき、ひい
てはソフトウェアの生産性向上および信頼性向上を図る
ことができる。
The company decided to define software components in units of data items, defined several types of processing for data items within each component, and developed a dictionary to store them. By converting it into components and completely separating it from data item-based parts, it becomes possible to standardize software parts, making it easier to reuse existing software, and ultimately improving software productivity and reliability. can.

また、生成対象の業務プログラムとデータ項目単位の部
品との対応づけをプログラム生成ツールが行うようにし
たため、設計者あるいはプログラマがこれらの対応を定
義すること8栗がなくなったことによりソフトウェアの
生産性向上および信頼性向上を図ることができる。
In addition, since the program generation tool now maps the business program to be generated and the parts for each data item, it is no longer necessary for the designer or programmer to define these correspondences, thereby improving software productivity. It is possible to improve performance and reliability.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明の実施例を示すシステムの機能構成図、
第2図は本発明を実現するハードウェア構成図、第3図
はディクショナリの定義例を示す図、第4図はプログラ
ム生成の処理手順を示すフローチャート、第5図はディ
クショナリ中のデータ項目に対するチェック条件、入力
編集および出力編集処理の例を説明する図、第6図は標
準パターンの例を示す図、第7図は入出力部品の展開方
法を示す図、第8図は帳票印刷処理の展開方法を示す図
、第9図は標準パターンに対してデータ項目部品の展開
方法を示す図である。 101・・−ディクショナリ、 104・・・プログラム仕様書ライブラリ、105・・
・データ仕様書ライブラリ。 106・・・標準パターンライブラリ。 107・・・プログラム生成ツール。 108・・・ソースライブラリ、601・・・標準パタ
ーン、602・・・チェック処理、603・・・入力編
集処理、70−1・・・標準パターン、702・・・入
出力環境定義、703・・・ファイル記述項、704・
・・データ記述項、705・・・プログラム仕様書57
06・・・ファイル仕様書、707・・・レコード仕様
書、 801・・・標準パターン、802・・・入出力
環境定義、 803・ファイル記述項、804・・・デ
ータ記述項、 808・・・プログラム仕様書、809・・・帳票仕様
書、901・・・標準パターン、  902・・・チェ
ック処理、903・・・入力編集処理、 904・・・プログラム仕様書、905・・ファイル仕
様書、906・・・ファイル仕様書、907・・・レコ
ード仕様書、908・・・レコード仕様書。 纂 I Z 嶌 2 図゛ 集 3 図 10/ 0I 嵩+図 第 5 図 嶌 6 図
FIG. 1 is a functional configuration diagram of a system showing an embodiment of the present invention;
Fig. 2 is a hardware configuration diagram that implements the present invention, Fig. 3 is a diagram showing an example of dictionary definition, Fig. 4 is a flowchart showing the processing procedure for program generation, and Fig. 5 is a check on data items in the dictionary. Figure 6 is a diagram illustrating an example of conditions, input editing, and output editing processing, Figure 6 is a diagram showing an example of a standard pattern, Figure 7 is a diagram showing a method for developing input/output components, and Figure 8 is a diagram showing development of form printing processing. A diagram showing the method, FIG. 9 is a diagram showing a method of developing data item parts with respect to a standard pattern. 101...-Dictionary, 104... Program specification library, 105...
・Data specification library. 106...Standard pattern library. 107...Program generation tool. 108... Source library, 601... Standard pattern, 602... Check processing, 603... Input editing processing, 70-1... Standard pattern, 702... Input/output environment definition, 703...・File description entry, 704・
...Data description entry, 705...Program specifications 57
06... File specification, 707... Record specification, 801... Standard pattern, 802... Input/output environment definition, 803... File description entry, 804... Data description entry, 808... Program specifications, 809... Form specifications, 901... Standard pattern, 902... Check processing, 903... Input editing processing, 904... Program specifications, 905... File specifications, 906 ...File specifications, 907...Record specifications, 908...Record specifications. Collection I Z Volume 2 Figure Collection 3 Figure 10/ 0I Volume + Figure 5 Figure 6

Claims (1)

【特許請求の範囲】 1、ソフトウェアをデータ項目単位にそれぞれのデータ
項目に対する処理をいくつかの種類に分けて定義し、デ
ィクショナリとよぶ専用の構造を持つファイルに格納す
る手段と、画面、帳票、ファイル等を処理するプログラ
ムを制御構造の特質に着目していくつかの種類に分け、
業務個別処理をそれ自身に持たない標準パターンとして
部品化する手段と、データ項目単位の部品を業務プログ
ラムの入出力媒体中のデータ項目名をもとに選択し、こ
れを前記標準パターンと合成することにより業務プログ
ラムを自動生成する手段とを有することを特徴とするデ
ータ中心型ソフトウェア部品によるプログラム自動生成
方式。 2、請求項1のデータ中心型ソフトウェア部品によるプ
ログラム自動生成方式において、前記データ項目に対す
る処理をチェック、入力編集、出力編集の3種類に分け
ることを特徴とするデータ中心型ソフトウェア部品によ
るプログラム自動生成方式。
[Scope of Claims] 1. Means for defining software for each data item by dividing it into several types of processing for each data item, and storing it in a file with a dedicated structure called a dictionary, and a screen, a form, Programs that process files, etc. are divided into several types based on the characteristics of their control structures.
A means for converting individual business processes into components as standard patterns that do not have their own, and selecting components for each data item based on data item names in input/output media of a business program, and composing them with the standard pattern. 1. An automatic program generation method using a data-centered software component, characterized in that it has a means for automatically generating a business program. 2. The automatic program generation method using a data-centered software component according to claim 1, wherein processing for the data item is divided into three types: checking, input editing, and output editing. method.
JP29969790A 1990-11-07 1990-11-07 Automatic program generating system by data oriented software parts Pending JPH04172529A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP29969790A JPH04172529A (en) 1990-11-07 1990-11-07 Automatic program generating system by data oriented software parts

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP29969790A JPH04172529A (en) 1990-11-07 1990-11-07 Automatic program generating system by data oriented software parts

Publications (1)

Publication Number Publication Date
JPH04172529A true JPH04172529A (en) 1992-06-19

Family

ID=17875876

Family Applications (1)

Application Number Title Priority Date Filing Date
JP29969790A Pending JPH04172529A (en) 1990-11-07 1990-11-07 Automatic program generating system by data oriented software parts

Country Status (1)

Country Link
JP (1) JPH04172529A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0560619A2 (en) * 1992-03-13 1993-09-15 Hitachi, Ltd. Method and apparatus for designing computer programs for business
JPH07121358A (en) * 1993-10-26 1995-05-12 Nec Corp Program customizing device
WO1996002033A1 (en) * 1994-07-12 1996-01-25 Jr East Japan Information Systems Co., Ltd. Method of writing program for specific business
KR20000052992A (en) * 1996-10-30 2000-08-25 네고로후미오 Software producing method, processor, processing method and recording medium

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0560619A2 (en) * 1992-03-13 1993-09-15 Hitachi, Ltd. Method and apparatus for designing computer programs for business
EP0560619A3 (en) * 1992-03-13 1995-04-05 Hitachi Ltd
US5414847A (en) * 1992-03-13 1995-05-09 Hitachi, Ltd. Design method and apparatus of computer program for business processing
US5729747A (en) * 1992-03-13 1998-03-17 Hitachi, Ltd. Design method and apparatus of computer program for business processing
JPH07121358A (en) * 1993-10-26 1995-05-12 Nec Corp Program customizing device
WO1996002033A1 (en) * 1994-07-12 1996-01-25 Jr East Japan Information Systems Co., Ltd. Method of writing program for specific business
US5809304A (en) * 1994-07-12 1998-09-15 Jr East Japan Information Systems Co., Inc. Method of designing application-oriented program
KR20000052992A (en) * 1996-10-30 2000-08-25 네고로후미오 Software producing method, processor, processing method and recording medium

Similar Documents

Publication Publication Date Title
JP3259928B2 (en) Business specification handling equipment
US5930806A (en) Method and system for data migration from network database to relational database
US5414847A (en) Design method and apparatus of computer program for business processing
CN110543303B (en) Visual service platform
US6698010B1 (en) System, method and computer program product for automatic generation of data processing program
JP3186117B2 (en) Automatic program generation system using data-centric software components
JP3577400B2 (en) System design equipment and data warehouse design system
JPH04172529A (en) Automatic program generating system by data oriented software parts
US6032149A (en) Vehicle electrical schematic management system
JPH1097417A (en) Program assembling device and storage medium
US6453318B1 (en) Control apparatus of structured information and method of controlling the information
JPH06110733A (en) Test case generating device of program
JP3345522B2 (en) Program development support device using data item parts
JPH09204301A (en) Program generation system
JP3830579B2 (en) Information analysis / editing system
JPH05134856A (en) Automatically programming system
JP3050467B2 (en) Data item dictionary generation method
Harandi et al. Software design using reusable algorithm abstractions
JP2004110102A (en) Project management method and process definition device
JPH03202920A (en) Recording method for processing procedure and user property and judgement method for interchangeability of processing procedure and user property
EP0726517A1 (en) A computer aided program generating system
JP2005043931A (en) System for automatically generating program and method for automatically generating program
Victorova et al. Metamodel-Driven Design of Microservice Architecture Applications
JPH03241440A (en) System for automatically preparing dump layout file
JP3324831B2 (en) CAD equipment