JPH05324289A - Device for automatically generating programming specification - Google Patents
Device for automatically generating programming specificationInfo
- Publication number
- JPH05324289A JPH05324289A JP4127467A JP12746792A JPH05324289A JP H05324289 A JPH05324289 A JP H05324289A JP 4127467 A JP4127467 A JP 4127467A JP 12746792 A JP12746792 A JP 12746792A JP H05324289 A JPH05324289 A JP H05324289A
- Authority
- JP
- Japan
- Prior art keywords
- program
- design document
- comment description
- program design
- comment
- 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
Links
Landscapes
- Stored Programmes (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】この発明は、ソフトウェア開発支
援装置に係り、特にソースプログラムから抽出できる設
計情報を、保守用のプログラム設計書として自動的に生
成するプログラム設計書自動作成装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a software development support device, and more particularly to a program design document automatic creation device for automatically generating design information that can be extracted from a source program as a maintenance program design document.
【0002】[0002]
【従来の技術】一般にプログラムの作成は、次のような
手順で行われる。まず、モジュール仕様書、フローチャ
ートに代表されるプログラム設計書を作成し(プログラ
ム設計工程)、それをもとに実際に計算機上でプログラ
ム動作させるためのソースプログラムを作成する(プロ
グラム製造工程)。次に、作成したプログラムに誤りが
ないかを実際の計算機で動作させて検査する(プログラ
ム検査工程)。そして、作成したプログラムに誤りがあ
れば、そのソースプログラムを修正する(プログラム修
正工程)。2. Description of the Related Art Generally, a program is created by the following procedure. First, a module design document and a program design document represented by a flowchart are created (program design process), and based on this, a source program for actually operating the program on a computer is created (program manufacturing process). Next, the created program is inspected by operating it on an actual computer for checking whether there is any error (program inspection step). If there is an error in the created program, the source program is modified (program modification process).
【0003】このとき、作成ソースプログラムに誤りが
あった場合には、それに対応するプログラム設計書もソ
ースプログラムと同時に修正しなければならない。この
際、ソースプログラムの修正有無の判断、ソースプログ
ラムの修正場所に対応したプログラム設計書の修正箇所
の検索、および実際のプログラム設計書の修正が必要と
なる。At this time, if there is an error in the created source program, the corresponding program design document must be corrected at the same time as the source program. At this time, it is necessary to judge whether or not the source program is modified, search for a modified portion of the program design document corresponding to the modified location of the source program, and modify the actual program design document.
【0004】従来、ソースプログラムの修正に伴う上記
したプログラム設計書修正のための一連の処理、即ちプ
ログラム検査工程で生じたソースプログラムの修正有無
の判断、ソースプログラムの修正場所に対応したプログ
ラム設計書の修正箇所の検索、および実際のプログラム
設計書の修正は、作業者(設計者)の手作業で行われて
おり、煩雑であった。Conventionally, a series of processes for modifying the above-mentioned program design document accompanying the modification of the source program, that is, the presence or absence of modification of the source program generated in the program inspection process, the program design document corresponding to the location of modification of the source program Retrieval of the correction part of and the correction of the actual program design document were performed manually by the operator (designer), which was complicated.
【0005】また、プログラム設計書修正のための一連
の処理が手作業で行われることから、ソースプログラム
の修正をプログラム設計書に正確に反映することは困難
であり、即ちプログラム設計書に誤りが生じ、プログラ
ム設計書とソースプログラムの間に矛盾が生じ易く、
(1)保守用プログラム設計書として十分機能しない、
(2)修正箇所の認識、修正作業に膨大な時間が掛か
る、などの問題があった。Further, since a series of processes for modifying the program design document are manually performed, it is difficult to accurately reflect the modification of the source program in the program design document, that is, the program design document is erroneous. It is easy to cause inconsistency between the program design document and the source program,
(1) Does not function well as a maintenance program design document,
(2) There has been a problem that it takes a huge amount of time to recognize the corrected portion and to perform the correction work.
【0006】[0006]
【発明が解決しようとする課題】上記したように従来
は、ソースプログラムの修正に伴うプログラム設計書の
修正のための一連の処理を、全て作業者の手作業で行わ
なければならず、したがってソースプログラムの修正を
プログラム設計書に正確に反映できず、保守用プログラ
ム設計書として十分機能しないとか、修正箇所の認識、
修正作業に膨大な時間が掛かるといった問題が生じ、ソ
フトウェアの開発・保守における大きな障害となってい
た。As described above, conventionally, a series of processes for modifying the program design document accompanying the modification of the source program must all be performed manually by the operator, and therefore the source code must be modified. Revision of the program cannot be accurately reflected in the program design document, and it does not function sufficiently as a maintenance program design document.
There was a problem that a huge amount of time was required for modification work, which was a major obstacle in software development and maintenance.
【0007】この発明は上記事情に鑑みてなされたもの
でその目的は、ソースプログラム中に固有の形式のコメ
ントを記述しておくだけで、そのコメント記述を利用し
てソースプログラムからプログラム設計書が自動的に作
成できるプログラム設計書自動作成装置を提供すること
にある。The present invention has been made in view of the above circumstances, and an object thereof is to simply write a comment in a unique format in a source program and use the comment description to generate a program design document from the source program. It is to provide a program design document automatic creation device that can automatically create.
【0008】この発明の他の目的は、生成したプログラ
ム設計書が指定の用紙サイズに収まるように、論理的に
意味のある単位に分割して配置することができるプログ
ラム設計書自動作成装置を提供することにある。Another object of the present invention is to provide a program design document automatic creating apparatus capable of dividing and arranging the generated program design document into logically meaningful units so that the program design document can fit into a designated paper size. To do.
【0009】[0009]
【課題を解決するための手段】この発明は、プログラム
設計書中に設定される説明文をなし固有のコメント記述
形式で記述されたコメント記述部分を有するソースプロ
グラムが格納されるソースプログラムファイルと、この
ソースプログラムファイルからソースプログラムを入力
して、プログラムの流れ、プログラム制御構造および固
有のコメント記述形式のコメント記述部分を解析し、そ
の解析結果をもとに同プログラムから上記の説明文を含
む設計情報を抽出してプログラム設計書を生成するプロ
グラム設計書生成手段とを備えたことを特徴とするもの
である。According to the present invention, there is provided a source program file in which a source program having a comment description portion described in a unique comment description format without a description set in a program design document is stored, Input the source program from this source program file, analyze the program flow, the program control structure and the comment description part of the unique comment description format, and design based on the analysis result, including the above description from the program. And a program design document generating means for extracting information and generating a program design document.
【0010】この発明はまた、プログラム設計書生成手
段により生成されたプログラム設計書を、指定の用紙サ
イズに収まるように、論理的な構造、例えば制御構造の
論理的な入れ子レベル(ネストレベル)を単位に分割し
て配置する分割手段を更に備えたことを特徴とする。According to the present invention, the program design document generated by the program design document generating means has a logical structure, for example, a logical nesting level (nesting level) of a control structure so that the program design document can be contained in a designated paper size. It is characterized by further comprising a dividing means for dividing and arranging into units.
【0011】[0011]
【作用】上記の構成において、アルゴリズムチャートで
代表されるようなプログラム設計書を作成する必要があ
る場合には、利用者はソースプログラムを作成する際
に、プログラム設計書上に記述したい説明文等を固有の
コメント記述形式(本発明装置特有のコメント記述形
式)に従ってソースプログラムの該当部分に記述してお
く。このようなコメント記述部分を持つソースプログラ
ムがソースプログラムファイルに格納されている状態
で、プログラム設計書の用紙サイズ等を指定して、本装
置の動作開始を指示すると、プログラム設計書生成手段
が起動される。In the above configuration, when it is necessary to create a program design document represented by an algorithm chart, the user, when creating a source program, an explanation or the like to describe on the program design document. In accordance with a unique comment description format (comment description format peculiar to the device of the present invention). When the source program having such a comment description part is stored in the source program file and the operation start of the device is instructed by specifying the paper size of the program design document, the program design document generating means is activated. To be done.
【0012】するとプログラム設計書生成手段は、ソー
スプログラムファイルからソースプログラムを入力し
て、プログラムの流れ、プログラム制御構造および固有
の形式のコメント記述部分を解析し、その解析結果をも
とに同プログラムから上記の説明文を含む設計情報を抽
出してプログラム設計書を生成する。Then, the program design document generating means inputs the source program from the source program file, analyzes the program flow, the program control structure, and the comment description part of the unique format, and based on the analysis result, the program. The design information including the above description is extracted from to generate a program design document.
【0013】ここで、上記固有のコメント記述形式とし
て、第1のタイプ、第2のタイプおよび第3のタイプの
3種が用意されている。この場合、プログラム設計書生
成手段は、ソースプログラム中に第1のタイプの(コメ
ント記述形式の)コメント記述部分が存在し、且つ同プ
ログラム中のそのコメント記述部分から次に現れる固有
の形式のコメント記述部分までに制御構造文が存在する
ならば、少くともその制御構造文毎に対応するシンボル
を持ち、その先頭のシンボルにコメント記述内容が設定
されたプログラム設計書データを生成し、制御構造文が
存在しないならば、所定のシンボルにコメント記述内容
が設定されたプログラム設計書データを生成する。Here, three types of first, second, and third types are prepared as the unique comment description formats. In this case, the program design document generating means has a comment description portion of the first type (comment description format) in the source program, and a comment of a unique format that appears next from the comment description portion in the program. If a control structure statement exists up to the description part, the program design document data that has at least a symbol corresponding to each control structure statement and the comment description content is set at the head symbol is generated, and the control structure statement is generated. If is not present, the program design document data in which the comment description content is set in the predetermined symbol is generated.
【0014】またプログラム設計書生成手段は、ソース
プログラム中に第2のタイプのコメント記述部分が存在
するならば、同プログラム中のそのコメント記述部分か
ら次に現れる固有の形式のコメント記述部分までに存在
する制御構造文を全て無視し、所定のシンボルにコメン
ト記述内容が設定されたプログラム設計書データを生成
する。またプログラム設計書生成手段は、ソースプログ
ラム中に第3のタイプのコメント記述部分が存在するな
らば、同プログラム中のそのコメント記述部分から次に
現れる同一タイプのコメント記述部分までを抽象表現し
たプログラム設計書データを生成する。Further, the program design document generating means, if the second type comment description portion exists in the source program, from the comment description portion in the same program to the comment description portion of the unique format that appears next. All existing control structure statements are ignored, and program design document data in which comment description contents are set in predetermined symbols is generated. Further, the program design document generating means, if the third type comment description part exists in the source program, a program that abstractly expresses from the comment description part in the same program to the comment description part of the same type that appears next. Generate design document data.
【0015】プログラム設計書生成手段によりプログラ
ム設計書(のデータ)が生成されると、分割手段が起動
される。分割手段は、このプログラム設計書が指定の用
紙サイズに収まらない場合、論理的な構造を単位に同プ
ログラム設計書を分割して、指定の用紙サイズに収まる
ように配置する。この分割・配置は、例えばプログラム
設計書がアルゴリズムチャートであれば、制御構造の論
理的な入れ子レベル単位で考えられる分割のケースの中
で、指定用紙サイズに収まる最も分割数が少ない分割を
探して行われる。When the program design document generating means (data thereof) is generated, the dividing means is activated. When the program design document does not fit in the designated paper size, the dividing means divides the program design document in units of logical structures and arranges the program design document so that it fits in the designated paper size. For this division / arrangement, for example, if the program design document is an algorithm chart, in the case of division that can be considered in logical nesting level units of the control structure, search for the division that has the smallest number of divisions that fits in the specified paper size. Done.
【0016】このように上記の構成によれば、利用者は
ソースプログラムを作成する際に、プログラム設計書上
に記述したい説明文等を固有のコメント記述形式に従っ
てソースプログラムの該当部分に記述しておくならば、
本発明装置を動作させるだけで、そのソースプログラム
に対応するプログラム設計書を自動的に作成することが
でき、しかも指定の用紙サイズに自動的に分割・配置す
ることもできる。According to the above configuration, the user, when creating the source program, describes the description or the like to be described in the program design document in the corresponding portion of the source program according to the unique comment description format. If you leave
By simply operating the device of the present invention, a program design document corresponding to the source program can be automatically created, and further, it can be automatically divided / arranged into a designated paper size.
【0017】[0017]
【実施例】図1はこの発明の一実施例に係るプログラム
設計書自動作成装置の構成を示すブロック図である。DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG. 1 is a block diagram showing the configuration of an automatic program design document creating apparatus according to an embodiment of the present invention.
【0018】図1において、1はプログラム設計書作成
のもとになるソースプログラムが格納されたソースプロ
グラムファイルである。このファイル1に格納されたソ
ースプログラムには、本実施例装置特有のコメントが記
述されている。2はそのソースプログラムの一部(ソー
スプログラム部分)を示し、21〜23はソースプログ
ラム部分2に実際に記述されている本実施例装置特有の
コメント(の具体例)を示す。In FIG. 1, reference numeral 1 is a source program file in which a source program which is a source of a program design document is stored. In the source program stored in this file 1, a comment peculiar to the apparatus of this embodiment is described. Reference numeral 2 indicates a part of the source program (source program portion), and reference numerals 21 to 23 indicate (specific examples) of comments peculiar to the apparatus of this embodiment which are actually described in the source program portion 2.
【0019】3はソースプログラムファイル1に格納さ
れているソースプログラムの流れ、プログラム制御構
造、本装置特有のコメント記述を解析し、プログラム設
計書のメタ・データを生成するソースプログラム解析・
プログラム設計書自動生成部、4はソースプログラム解
析・プログラム設計書自動生成部3によって生成された
メタ・データが格納されるファイル(メタ・データファ
イル)である。メタ・データとは、ソースプログラムの
種類(C言語、FORTRANなど)、プログラム設計
書の種別(フローチャートなど、アルゴリズムを表現す
る、ホワイトボックスとして見た内部スペックであるア
ルゴリズムチャート、ブラックボックスとして見た外部
スペックであるモジュール仕様書など)に依存しない、
プログラム設計書の基本データである。Reference numeral 3 denotes a source program analysis / analysis that analyzes the flow of the source program stored in the source program file 1, the program control structure, and the comment description peculiar to this apparatus, and generates the meta data of the program design document.
The program design document automatic generation unit 4 is a file (meta data file) in which the meta data generated by the source program analysis / program design document automatic generation unit 3 is stored. The meta data means the type of source program (C language, FORTRAN, etc.), the type of program design document (flowchart, etc.), an algorithm chart that is an internal specification seen as a white box, and an external seen as a black box. It does not depend on specifications such as module specifications,
This is the basic data of the program design document.
【0020】5はメタ・データファイル4に格納されて
いるメタ・データの示すプログラム設計書を指定された
用紙の大きさに入るように自動分割・配置するプログラ
ム設計書自動分割部、6はプログラム設計書自動分割部
5によって分割・配置されたプログラム設計書(のデー
タ)が格納されるプログラム設計書ファイル、7はファ
イル6に格納されているプログラム設計書の表示、編集
および印刷を司るプログラム設計書表示・編集・印刷部
である。なお、プログラム設計書自動分割部5およびプ
ログラム設計書表示・編集・印刷部7の組は、プログラ
ム設計書の種別毎に用意されているが、図1では1組だ
けを示してある。8はプログラム設計書の表示等に用い
られる表示装置、9はプログラム設計書の印刷等に用い
られる印刷装置である。Reference numeral 5 is a program design document automatic dividing section for automatically dividing and arranging the program design document indicated by the meta data stored in the meta data file 4 so as to fit into a designated paper size, and 6 is a program A program design document file in which (the data of) the program design document divided and arranged by the automatic design document dividing unit 5 is stored, and 7 is a program design for displaying, editing, and printing the program design document stored in the file 6. It is a book display / editing / printing section. A set of the program design document automatic dividing unit 5 and the program design document displaying / editing / printing unit 7 is prepared for each type of program design document, but only one set is shown in FIG. Reference numeral 8 is a display device used for displaying the program design document, and 9 is a printing device used for printing the program design document.
【0021】10は本装置に対して動作開始指示、プロ
グラム設計書の種別、設計用紙の大きさ(A4,A3、
その他任意の用紙サイズ)等を利用者操作により入力す
るための入力装置、11は入力装置10からの動作開始
指示等の入力に応じてソースプログラム解析・プログラ
ム設計書自動生成部3、プログラム設計書自動分割部5
およびプログラム設計書表示・編集・印刷部7を制御し
て、プログラム設計書り自動作成を司る制御部である。
上記ソースプログラム解析・プログラム設計書自動生成
部3、プログラム設計書自動分割部5、プログラム設計
書表示・編集・印刷部7、および制御部11は、情報処
理装置の記憶装置に格納されているプログラム設計書自
動作成用の専用プログラムと、同プログラムを実行する
CPU(図示せず)によって実現される機能ブロックで
ある。Reference numeral 10 denotes an operation start instruction to the apparatus, the type of program design document, and the size of the design sheet (A4, A3,
An input device for inputting other arbitrary paper sizes, etc. by a user operation, 11 is a source program analysis / program design document automatic generation unit 3, a program design document in response to an input of an operation start instruction or the like from the input device 10. Automatic division unit 5
Also, the control unit controls the program design document display / editing / printing unit 7 to automatically create the program design document.
The source program analysis / program design document automatic generation unit 3, program design document automatic division unit 5, program design document display / editing / printing unit 7, and control unit 11 are programs stored in a storage device of an information processing apparatus. It is a functional block realized by a dedicated program for automatically creating a design document and a CPU (not shown) that executes the program.
【0022】次に、図1に示すプログラム設計書自動作
成装置の処理の概要を説明する。まず本装置を使用して
プログラム設計書を自動作成しようとする利用者は、ソ
ースプログラムを作成する際に、プログラム設計書上に
記述したい説明文(以下、シンボル記述情報と称する)
を、図1において符号21〜23で示されるように、本
装置特有のコメント記述方法に従って記述しておく。Next, an outline of the processing of the program design document automatic creation apparatus shown in FIG. 1 will be described. First, a user who intends to automatically create a program design document using this device, when creating a source program, an explanatory note (hereinafter referred to as symbol description information) that he / she wants to describe on the program design document.
Is described in accordance with the comment description method peculiar to the present apparatus, as indicated by reference numerals 21 to 23 in FIG.
【0023】次に利用者は、本装置特有のコメント記述
がなされたソースプログラムがソースプログラムファイ
ル1に格納されている状態で、入力装置10を操作し、
作成したいプログラム設計書の種別、用紙の大きさを入
力し、動作開始の指示を入力する。この利用者の入力操
作に従い、入力装置10から制御部11に対してプログ
ラム設計書の種別、用紙サイズが指定され、更に動作開
始が指示される。Next, the user operates the input device 10 while the source program in which the comment description peculiar to this device is written is stored in the source program file 1,
Enter the type of program design document you want to create, the size of the paper, and the operation start instruction. According to the user's input operation, the input device 10 instructs the control unit 11 to specify the type of program design document and the paper size, and further instruct to start the operation.
【0024】制御部11は入力装置10から動作開始指
示を受けると、まずソースプログラム解析・プログラム
設計書自動生成部3を起動する。これにより、以下に述
べるプログラム設計書の自動作成が開始される。Upon receiving an operation start instruction from the input device 10, the control unit 11 first activates the source program analysis / program design document automatic generation unit 3. As a result, automatic creation of the program design document described below is started.
【0025】ソースプログラム解析・プログラム設計書
自動生成部3は、ソースプログラムファイル1に格納さ
れているソースプログラムを入力し、プログラムの流
れ、プログラムの制御構造、本装置特有のコメント記述
を解析し、プログラム設計書の基本データであるメタ・
データを生成し、メタ・データファイル4に格納する。
ソースプログラム解析・プログラム設計書自動生成部3
はメタ・データの生成を完了すると、その旨を制御部1
1に通知する。これにより制御部11は、プログラム設
計書自動分割部5を起動する。The source program analysis / program design document automatic generation unit 3 inputs the source program stored in the source program file 1, analyzes the flow of the program, the control structure of the program, and the comment description peculiar to this apparatus, Meta, which is the basic data of the program design document
Data is generated and stored in the meta data file 4.
Source program analysis / program design document automatic generation unit 3
When the meta data generation is completed, the control unit 1
Notify 1. As a result, the control unit 11 activates the program design document automatic dividing unit 5.
【0026】プログラム設計書自動分割部5はまず、メ
タ・データファイル4に格納されているメタ・データの
示すプログラム設計書を論理的な仮想無限空間に配置す
る。次にプログラム設計書自動分割部5は、仮想無限空
間上のプログラム設計書が指定の用紙サイズに収まるか
否かを調べ、収まらなければ、そのプログラム設計書
を、指定のプログラム設計書種別、用紙サイズに基づい
て自動分割する。ここでは、例えモジュール仕様書であ
れば、行あふれなどによる(行を単位の)分割が行わ
れ、アルゴリズムチャートであれば、制御構造(の論理
的な入れ子のレベル深さ)を認識して、論理的な入れ子
レベル単位で考えられる分割のケースの中で、指定され
た用紙サイズに収まる最も効率的な(分割が少ない)分
割を探して行われる。The program design document automatic dividing section 5 first arranges the program design document indicated by the meta data stored in the meta data file 4 in a logical virtual infinite space. Next, the program design document automatic dividing section 5 checks whether or not the program design document in the virtual infinite space fits in the designated paper size, and if it does not fit, the program design document is designated as the designated program design document type, the paper size. Automatically split based on size. Here, for example, if it is a module specification, division (by line) is performed due to overflow of lines, and if it is an algorithm chart, it recognizes the control structure (logical nesting level depth), Among the possible cases of division in logical nesting level units, the most efficient (less division) division that fits the specified paper size is searched for.
【0027】このようにして自動分割が終了したプログ
ラム設計書は、本装置で自動生成されたプログラム設計
書として、プログラム設計書ファイル6に格納される。
このプログラム設計書は、制御部11の制御のもとで、
プログラム設計書表示・編集・印刷部7により、表示装
置8から表示出力され、また印刷装置9から印刷出力さ
れる。The program design document for which automatic division is completed in this way is stored in the program design document file 6 as a program design document automatically generated by this apparatus.
This program design document is under the control of the control unit 11.
The program design document display / editing / printing unit 7 displays and outputs from the display device 8 and prints out from the printing device 9.
【0028】利用者は、表示あるいは印刷されたプログ
ラム設計書の配置・分割結果が意図に反している場合、
即ち自動分割結果に問題がある場合、或いは再度変更が
必要な場合、表示装置8に表示されているプログラム設
計書の配置・分割結果を見ながら、入力装置10を用い
て再編集(修正)箇所を指定し、プログラム設計書再編
集(修正)のための操作を行う。すると、制御部11の
制御のもとでプログラム設計書表示・編集・印刷部7が
動作し、ファイル6に格納されているプログラム設計書
のうち、表示装置8上で指定された部分の再編集が行わ
れる。If the result of the arrangement / division of the displayed or printed program design document is unintended,
That is, when there is a problem in the automatic division result, or when it is necessary to change it again, while observing the arrangement / division result of the program design document displayed on the display device 8, the re-editing (correction) location is performed using the input device Is specified, and the operation for re-editing (correcting) the program design document is performed. Then, the program design document display / editing / printing unit 7 operates under the control of the control unit 11 to re-edit the portion of the program design document stored in the file 6 designated on the display device 8. Is done.
【0029】次に、ソースプログラム解析・プログラム
設計書自動生成部3の処理の詳細を、指定のプログラム
設計書がアルゴリズムチャートである場合を例に、図2
および図3のフローチャートを参照して説明する。Next, the details of the processing of the source program analysis / program design document automatic generation unit 3 will be described with reference to FIG. 2 when the designated program design document is an algorithm chart.
And it demonstrates with reference to the flowchart of FIG.
【0030】まずソースプログラム解析・プログラム設
計書自動生成部3の処理は、ソースプログラムファイル
1に格納されているソースプログラムを構成する順次処
理の構造文(順次処理構造文)および選択、反復処理の
各制御構造文と、本装置特有のコメント記述とから、ア
ルゴリズムの制御構造とプログラム設計書上の説明文と
なるコメント記述内容(シンボル記述情報)を抽出し、
その情報をベースとするものである。ソースプログラム
の制御構造文とは、プログラム処理の繰り返し、分岐を
示すwhile文、if文などである。First, the processing of the source program analysis / program design document automatic generation unit 3 includes the structural statements of sequential processing (sequential processing structural statements) constituting the source program stored in the source program file 1 and the selection and iterative processing. From each control structure statement and the comment description peculiar to this device, extract the comment description content (symbol description information) that is the explanation structure on the algorithm control structure and program design document,
It is based on that information. The control structure statement of the source program is a while statement, if statement, or the like that indicates repetition of program processing or a branch.
【0031】さて、ソースプログラム解析・プログラム
設計書自動生成部3は、制御部11により起動される
と、ソースプログラムファイル1からソースプログラム
を1行だけ入力して、字句解釈を行い、コメント記述部
分であるか否かを調べる(図2ステップS1,S2)。
コメントは、C言語のソースプログラムを例にとると、 /* */ で定義される形式でソースプログラム中に記述される。When the source program analysis / program design document automatic generation unit 3 is activated by the control unit 11, only one line of the source program is input from the source program file 1 for lexical interpretation and comment description portion. Is checked (steps S1 and S2 in FIG. 2).
Taking a C language source program as an example, the comment is described in the source program in the format defined by / * * /.
【0032】もしコメント記述の場合、ソースプログラ
ム解析・プログラム設計書自動生成部3は、その記述が
本装置特有のコメントあるか否かを調べる(図2ステッ
プS3)。本装置特有のコメント記述形式としては、C
言語を例にとると、以下に示すタイプa〜cの3種が用
意されている。 (1)タイプaのコメント記述 /*[ ]*/ (2)タイプbのコメント記述 /** **/ (3)タイプcのコメント記述 /*< >*/If it is a comment description, the source program analysis / program design document automatic generation section 3 checks whether or not the description is a comment peculiar to this apparatus (step S3 in FIG. 2). The comment description format unique to this device is C
Taking a language as an example, the following three types a to c are prepared. (1) Type a comment description / * [] * / (2) Type b comment description / **** / (3) Type c comment description / * <> * /
【0033】上記シンボル記述情報は、タイプaであれ
ば“/*[”と“]*/”の間に、タイプbであれば
“/**”と“**/”の間に、タイプcであれば“/
*<”と“>*/”の間に、それぞれ記述される。The symbol description information is of type a between "/ * [" and "] * /" and type b between "/ **" and "** /". If c then "/
It is described between * <”and“> * / ”, respectively.
【0034】上記タイプaのコメント記述は、そのコメ
ント記述から次に現れる本装置特有のコメント記述まで
に存在する全ての制御構造文を探し、制御構造文が存在
するならば、少くともその制御構造文毎に対応するシン
ボルを生成し、その先頭のシンボルにコメント記述内容
(シンボル記述情報)が設定されたメタ・データを生成
するためのものである。このような、メタ・データの生
成モードを、全制御構造文解析モードと呼ぶ。なお、制
御構造文が存在しない順次処理構造文の場合には、その
コメント記述から次に現れる本装置固有のコメント記述
の直前までを、1つのシンボルとして、そのシンボルに
シンボル記述情報が設定されたメタ・データが生成され
る。The comment description of the type a is searched for all control structure statements existing from the comment description to the comment description specific to the apparatus that appears next, and if there is a control structure statement, at least the control structure statement is searched. This is for generating meta data in which a symbol corresponding to each sentence is generated and comment description contents (symbol description information) are set in the leading symbol. Such a meta data generation mode is referred to as a total control structure statement analysis mode. In the case of a sequential processing structure statement in which a control structure statement does not exist, the symbol description information is set to the symbol from that comment description to immediately before the comment description unique to the present apparatus that appears next. Meta data is generated.
【0035】次に、上記タイプbのコメント記述は、そ
のコメント記述から次に現れる本装置特有のコメント記
述までに存在する制御構造文を全て無視し、1つのシン
ボルに、シンボル記述情報が設定されたメタ・データを
生成するためのものである。このような、メタ・データ
の生成モードを、付帯制御構造文無視モードと呼ぶ。Next, in the type b comment description, all control structure statements existing from the comment description to the comment description specific to the present apparatus appearing next are ignored, and symbol description information is set to one symbol. It is for generating the meta data. Such a meta data generation mode is called an incidental control structure statement ignore mode.
【0036】次に、上記タイプcのコメント記述は、あ
る任意の処理をプログラム設計書上で抽象的に表現した
い場合に、その抽象表現をする部分を指定するためのも
ので、そのコメント記述から次の同一タイプのコメント
記述(但し、シンボル記述情報を持たない)までを抽象
表現したメタ・データが生成される。このような、メタ
・データの生成モードを、抽象化表現モードと呼ぶ。Next, the comment description of the type c is for designating an abstract expression when an arbitrary process is to be expressed abstractly on the program design document. From the comment description The meta data that abstractly expresses up to the next comment description of the same type (however, it does not have symbol description information) is generated. Such a meta data generation mode is called an abstract representation mode.
【0037】ここで、タイプaのコメント記述(/*
[ ]*/)を持つソースプログラム部分に対する
ソースプログラム解析・プログラム設計書自動生成部3
の動作を、上記図2および図3のフローチャートの他、
図4を参照して説明する。なお、図4は、タイプaコメ
ント記述を持つソースプログラム(の一部)および対応
するメタ・データの示すプログラム設計書(フローチャ
ート)の具体例を示すもので、同図(a)に順次処理の
構造文の、同図(b)に反復処理の制御構造文の、そし
て同図(c)に選択処理の制御構造文の代表的な例を示
す。Here, the comment description of type a (/ *
Source program analysis / program design document automatic generation unit 3 for source program parts having [] * /)
In addition to the operations of the flowcharts of FIGS. 2 and 3,
This will be described with reference to FIG. Note that FIG. 4 shows a specific example of the program design document (flow chart) indicated by (a part of) the source program having the type-a comment description and corresponding meta data. A representative example of the control structure statement of the iterative processing is shown in FIG. 7B, and a control structure statement of the selection processing is shown in FIG.
【0038】ソースプログラム解析・プログラム設計書
自動生成部3は、図2のステップS3で本装置特有のコ
メント記述であることを判別した場合、そのコメント記
述がタイプa〜cののいずれであるか(タイプcの場合
にはシンボル記述情報付きコメント記述か否か)を調べ
る(図2ステップS4)。If the source program analysis / program design document automatic generation unit 3 determines in step S3 in FIG. 2 that the comment description is peculiar to the present apparatus, which of the types a to c is the comment description? (In the case of type c, it is checked whether or not it is a comment description with symbol description information) (step S4 in FIG. 2).
【0039】もし、タイプaのコメント記述であれば、
ソースプログラム解析・プログラム設計書自動生成部3
は全制御構造文解析モードを設定し、且つそのコメント
記述内容であるシンボル記述情報を抽出する(図2ステ
ップS5)。そして、ソースプログラム解析・プログラ
ム設計書自動生成部3は、図3(a)に詳細を示す全制
御構造文解析モードの処理を行う(図2ステップS
6)。If the comment description is of type a,
Source program analysis / program design document automatic generation unit 3
Sets all control structure sentence analysis mode and extracts the symbol description information which is the comment description content thereof (step S5 in FIG. 2). Then, the source program analysis / program design document automatic generation unit 3 performs the processing in the all-control-structure-statement analysis mode whose details are shown in FIG. 3A (step S in FIG. 2).
6).
【0040】この全制御構造文解析モードの処理では、
まず、ソースプログラムの後続の1行が入力されて字句
解析が行われる(図3(a)ステップS61)。もし、
その行が制御構造文であるならば、図2ステップS5で
抽出したシンボル記述情報が1つのシンボル(例えば菱
形シンボル)に設定されたメタ・データが生成される
(図3(a)ステップS62,63)。これに対し、そ
の行が制御構造文でなければ、図2ステップS5で抽出
したシンボル記述情報が1つのシンボル(例えばボック
スシンボル)に設定されたメタ・データが生成される
(図3(a)ステップS62,64)。In the processing of this full control structure statement analysis mode,
First, the subsequent one line of the source program is input and lexical analysis is performed (FIG. 3A, step S61). if,
If the line is a control structure statement, meta data in which the symbol description information extracted in step S5 in FIG. 2 is set for one symbol (for example, a diamond symbol) is generated (step S62 in FIG. 3A). 63). On the other hand, if the line is not a control structure statement, meta data in which the symbol description information extracted in step S5 of FIG. 2 is set for one symbol (for example, box symbol) is generated (FIG. 3A). Steps S62, 64).
【0041】上記ステップS63またはS64が実行さ
れると、ソースプログラムの後続の1行が入力されて字
句解析が行われる(図3(a)ステップS65)。も
し、その行が本装置特有のコメント記述または制御構造
文でなければ(図3(a)ステップS66)、ステップ
S65に戻って次の1行の字句解析が行われる。即ち、
本装置特有のコメント記述または制御構造文が検出され
るまで、ソースプログラムが読み飛ばされる。そして、
本装置特有のコメント記述または制御構造文が検出され
ると、全制御構造文解析モードの処理(図2ステップS
6)が終了する。When step S63 or S64 is executed, the subsequent line of the source program is input and lexical analysis is performed (FIG. 3 (a) step S65). If the line is not a comment description or control structure statement peculiar to the present apparatus (step S66 of FIG. 3A), the process returns to step S65 and the lexical analysis of the next one line is performed. That is,
The source program is skipped until a comment description or control structure statement specific to this device is detected. And
When the comment description or control structure statement peculiar to this device is detected, the process of all control structure statement analysis mode (step S in FIG. 2).
6) ends.
【0042】したがって全制御構造文解析モードの処理
によれば、図4(a)に示すように制御構造文(whi
le,ifのキーワード)が存在しない順次処理の構造
では、タイプaのコメント記述から次に現れるコメント
記述(の直前)までが、例えば図4(a)において符号
41で示すような1つのボックスシンボルとされ、その
シンボルにシンボル記述情報が設定される。Therefore, according to the processing in the all control structure statement analysis mode, as shown in FIG.
In the structure of sequential processing in which the (le, if keywords) do not exist, the comment description of type a to the comment description that appears next (just before) is, for example, one box symbol as indicated by reference numeral 41 in FIG. 4A. And symbol description information is set to the symbol.
【0043】同様に、図4(b)に示すように、タイプ
aのコメント記述の次に“while”というキーワー
ドを持つ制御構造文が存在する場合には、図4(b)に
おいて符号42で示すようなプログラム設計書の繰り返
し構造を示すシンボルにシンボル記述情報が設定され
る。また、図4(c)に示すように、タイプaのコメン
ト記述の次に“if”というキーワードを持つ制御構造
文が存在する場合には、図4(c)において符号43で
示すようなプログラム設計書の選択構造を示すシンボル
にシンボル記述情報が設定される。Similarly, as shown in FIG. 4B, when there is a control structure statement having the keyword "while" next to the comment description of type a, reference numeral 42 in FIG. The symbol description information is set to the symbol indicating the repeating structure of the program design document as shown. Further, as shown in FIG. 4C, when a control structure statement having a keyword “if” exists after the comment description of type a, a program as indicated by reference numeral 43 in FIG. Symbol description information is set in the symbol indicating the selection structure of the design document.
【0044】さて、全制御構造文解析モードの処理(図
2ステップS6)が終了すると、全てのソースに対する
処理が終了していなければ(図2ステップS12)、図
2ステップS2に戻る。このステップS2では、前記し
たようにコメント記述であるか否かが調べられ、コメン
ト記述であれば、そのコメント記述の種類に対応した処
理に進む。When the processing of all control structure sentence analysis mode (step S6 in FIG. 2) is completed, if the processing for all sources is not completed (step S12 in FIG. 2), the process returns to step S2 in FIG. In step S2, as described above, it is checked whether or not it is a comment description, and if it is a comment description, the process corresponding to the type of the comment description is performed.
【0045】一方、コメント記述でなければ、次のコメ
ント記述が出現するまで後続のソースプログラムを入力
して字句解析を行いながら、その間に出現する制御構造
文に対応したメタ・データを生成する(図2ステップS
13)。On the other hand, if it is not a comment description, the subsequent source program is input and lexical analysis is performed until the next comment description appears, and the meta data corresponding to the control structure statement that appears during that time is generated ( Figure 2 Step S
13).
【0046】次に、前記ステップS4でタイプbのコメ
ント記述であることが検出された場合について説明す
る。この場合、ソースプログラム解析・プログラム設計
書自動生成部3は付帯制御構造文無視モードを設定し、
且つそのコメント記述内容であるシンボル記述情報を抽
出する(図2ステップS7)。そして、ソースプログラ
ム解析・プログラム設計書自動生成部3は、図3(b)
に詳細を示す付帯制御構造文無視モードの処理を行う
(図2ステップS8)。Next, the case where it is detected in step S4 that the comment description is of type b will be described. In this case, the source program analysis / program design document automatic generation unit 3 sets the incidental control structure statement ignore mode,
Moreover, the symbol description information which is the comment description content is extracted (step S7 in FIG. 2). The source program analysis / program design document automatic generation unit 3 is shown in FIG.
The process of the incidental control structure statement ignoring mode whose details are shown in FIG.
【0047】この付帯制御構造文無視モードの処理で
は、まず、後続のソースプログラムが1行入力されて字
句解析が行われる(図3(b)ステップS81)。そし
て、本装置特有のコメント記述が検出されると、図2ス
テップS7で抽出されたシンボル記述情報が1つのシン
ボル(例えばボックスシンボル)に設定されたメタ・デ
ータが生成され(図3(b)ステップS83)、付帯制
御構造文無視モードの処理(図2ステップS8)が終了
する。In the processing of the incidental control structure statement ignoring mode, first, one line of the subsequent source program is input and lexical analysis is performed (FIG. 3 (b) step S81). When the comment description peculiar to this apparatus is detected, the meta data in which the symbol description information extracted in step S7 in FIG. 2 is set in one symbol (for example, box symbol) is generated (FIG. 3 (b)). (Step S83), the process of the incidental control structure statement ignore mode (step S8 in FIG. 2) ends.
【0048】このように付帯制御構造文無視モードで
は、タイプbのコメント記述から次に現れる本装置特有
のコメント記述までに存在する制御構造文は全て無視さ
れ、1つのシンボル(ボックスシンボル)にシンボル記
述情報が設定されたメタ・データが生成される。As described above, in the incidental control structure statement ignoring mode, all the control structure statements existing from the comment description of type b to the comment description specific to this apparatus that appears next are ignored and one symbol (box symbol) becomes a symbol. Meta data in which descriptive information is set is generated.
【0049】ところで、図5(a)において符号51で
示すようなプログラムの本質処理に付帯する、符号52
で示す処理(本質処理のための付帯処理)などは、if
という制御構造でも、プログラム設計書として表現した
くない場合がある。しかし、タイプaのコメント記述で
は、これらの付帯処理も、図2ステップS13の処理に
より、図5(a)において符号53で示すように、制御
構造文に対応したシンボルで表現されてしまう。By the way, reference numeral 52 is attached to the essential processing of the program as shown by reference numeral 51 in FIG.
The processing indicated by (the incidental processing for essential processing), etc.
Even with this control structure, there are cases where you do not want to express it as a program design document. However, in the comment description of type a, these incidental processes are also represented by the symbol corresponding to the control structure statement as indicated by reference numeral 53 in FIG. 5A by the process of step S13 of FIG.
【0050】これに対し、上記のタイプbのコメント記
述を用いることにより、図5(b)に示すように、タイ
プbのコメント記述から次に現れる本装置特有のコメン
ト記述までに存在する付帯処理をプログラム設計書上に
表現しないようにすることができる。On the other hand, by using the above type b comment description, as shown in FIG. 5B, the incidental processing existing from the type b comment description to the comment description peculiar to this apparatus that appears next. Can be prevented from being expressed in the program design document.
【0051】さて、付帯制御構造文無視モードの処理
(図2ステップS8)が終了すると、全てのソースに対
する処理が終了していなければ(図2ステップS1
2)、図2ステップS2に戻る。このステップS2で
は、前記したようにコメント記述であるか否かが調べら
れる。上記ステップS8から抜けた場合には、コメント
記述であり、この場合には、そのコメント記述の種類に
対応した処理に進む。Now, when the processing of the incidental control structure statement ignoring mode (step S8 in FIG. 2) is completed, if the processing for all the sources is not completed (step S1 in FIG. 2).
2) and returns to step S2 in FIG. In step S2, as described above, it is checked whether or not it is a comment description. If step S8 is exited, it is a comment description, and in this case, the processing corresponding to the type of the comment description is performed.
【0052】次に、前記ステップS4でシンボル記述情
報付きのタイプcのコメント記述であることが検出され
た場合について説明する。この場合、ソースプログラム
解析・プログラム設計書自動生成部3は第1の抽象化表
現モードを設定し、且つそのコメント記述内容であるシ
ンボル記述情報を抽出する(図2ステップS9)。そし
て、ソースプログラム解析・プログラム設計書自動生成
部3は、図3(c)に詳細を示す第1の抽象化表現モー
ドの処理を行う(図2ステップS10)。Next, the case where it is detected in step S4 that the comment description is of type c with symbol description information will be described. In this case, the source program analysis / program design document automatic generation unit 3 sets the first abstraction expression mode and extracts the symbol description information which is the comment description content thereof (step S9 in FIG. 2). Then, the source program analysis / program design document automatic generation unit 3 performs the processing in the first abstraction expression mode whose details are shown in FIG. 3C (step S10 in FIG. 2).
【0053】この第1の抽象化表現モードの処理では、
まず図2ステップS9で抽出したシンボル記述情報が1
つのシンボル(例えばボックスシンボル)に設定された
メタ・データが生成され、続いて抽象化表現(の開始)
を表すメタ・データ(ここでは、抽象化表現の対象部分
の詳細であることを示す“refinement”とい
う特定のメタ・データ)が生成される(図3(c)ステ
ップS101,102)。In the processing of this first abstract representation mode,
First, the symbol description information extracted in step S9 in FIG. 2 is 1
The meta data set to one symbol (for example, a box symbol) is generated, followed by (the start of) an abstract representation
(In this case, specific meta data "refinement" indicating the details of the target part of the abstract expression) is generated (steps S101 and 102 in FIG. 3C).
【0054】次に、後続のソースプログラムが1行入力
されて字句解析が行われる(図3(c)ステップS10
3)。もし、その行が本装置特有のコメント記述でも制
御構造文でもなければ(図3(c)ステップS10
4)、ステップS103に戻って次の1行の字句解析が
行われる。即ち、本装置特有のコメント記述または制御
構造文が検出されるまで、ソースプログラムが読み飛ば
される。Next, one line of the subsequent source program is input and lexical analysis is performed (step S10 in FIG. 3 (c)).
3). If the line is neither a comment description nor a control structure statement peculiar to this apparatus (step S10 in FIG. 3C).
4) Then, returning to step S103, the lexical analysis of the next one line is performed. That is, the source program is skipped until the comment description or control structure statement peculiar to this apparatus is detected.
【0055】そして、本装置特有のコメント記述または
制御構造文が検出されると、第1の抽象化表現モードの
処理(図2ステップS10)が終了し、全てのソースに
対する処理が終了していなければ(図2ステップS1
2)、図2ステップS2に戻る。このステップS2で
は、前記したようにコメント記述であるか否かが調べら
れ、コメント記述であれば、そのコメント記述の種類に
対応した処理に進み、コメント記述でなければ、上記図
2ステップS13の処理に進む。When the comment description or control structure statement peculiar to this apparatus is detected, the processing in the first abstract representation mode (step S10 in FIG. 2) is completed, and the processing for all the sources must be completed. If (Fig. 2 Step S1
2) and returns to step S2 in FIG. In this step S2, it is checked as described above whether or not it is a comment description. If it is a comment description, the process corresponding to the type of the comment description is proceeded to. If it is not a comment description, the step S13 in FIG. Go to processing.
【0056】やがて、シンボル記述情報付きでないタイ
プcのコメント記述が検出されると、図3(d)に詳細
を示す第2の抽象化表現モードの処理が行われる(図2
ステップS11)。この第2の抽象化表現モードの処理
では、まず抽象化表現(の終了)を表すメタ・データ
(ここでは、抽象化表現の対象部分の詳細の終了である
ことを示す“end refinement”という特
定のメタ・データ)が生成される(図3(d)ステップ
S111)。次に、後続のソースプログラムが1行入力
されて字句解析が行われる(図3(d)ステップS11
2)。もし、その行が本装置特有のコメント記述でも制
御構造文でもなければ(図3(d)ステップS11
3)、ステップS112に戻って次の1行の字句解析が
行われる。即ち、本装置特有のコメント記述または制御
構造文が検出されるまで、ソースプログラムが読み飛ば
される。When a comment description of type c without the symbol description information is detected, processing of the second abstract representation mode whose details are shown in FIG. 3D is performed (FIG. 2).
Step S11). In the processing of the second abstract representation mode, first, meta data representing (the end of) the abstract representation (here, a specification called "end refinement" indicating the end of the details of the target part of the abstract representation is specified). Meta data) is generated (step S111 in FIG. 3D). Next, one line of the subsequent source program is input and lexical analysis is performed (step S11 in FIG. 3D).
2). If the line is neither a comment description peculiar to the apparatus nor a control structure statement (step S11 in FIG. 3D).
3) Then, returning to step S112, the lexical analysis of the next one line is performed. That is, the source program is skipped until the comment description or control structure statement peculiar to this apparatus is detected.
【0057】そして、本装置特有のコメント記述または
制御構造文が検出されると、第2の抽象化表現モードの
処理(図2ステップS11)が終了し、全てのソースに
対する処理が終了していなければ(図2ステップS1
2)、図2ステップS2に戻る。When the comment description or control structure statement peculiar to the present apparatus is detected, the processing in the second abstract representation mode (step S11 in FIG. 2) ends, and the processing for all the sources must end. If (Fig. 2 Step S1
2) and returns to step S2 in FIG.
【0058】以上の第1および第2の抽象化表現モード
の処理によれば、図6において符号61で示すシンボル
記述情報付きのタイプcのコメント記述から、符号62
で示すシンボル記述情報付きでないタイプcのコメント
記述までの処理が、そのシンボル記述情報により、同図
において符号63または符号64で示すように抽象化表
現される。According to the above-described processing of the first and second abstract representation modes, from the comment description of type c with symbol description information shown by reference numeral 61 in FIG.
The process up to the comment description of the type c without the symbol description information indicated by is represented in abstract by the symbol description information as indicated by reference numeral 63 or reference numeral 64 in FIG.
【0059】なお、上記した本装置特有のコメント記
述、即ちタイプa〜cのコメント記述は、通常のソース
プログラムのコメント記述“/* */”(C言語
の例)に、“[”および“]”(タイプaの場合)、
“*”および“*”(タイプbの場合)、“<”および
“>”(タイプcの場合)が付加された構造であるた
め、コンパイラに対しては何の影響も与えず、前述した
ように、本装置に対してのみに「シンボルの中に記述す
る説明文」という意味を与えている。また本装置特有の
コメント記述は、前述したように、シンボルへのコメン
ト記述だけでなく、プログラム設計書生成時の、ソース
プログラムとプログラム設計書の対応関係も制御する機
能を持つ。The comment description peculiar to the present apparatus, that is, the comment description of the types a to c is added to the comment description "/ * * /" (example of C language) of a normal source program with "[" and "". ] ”(For type a),
Since the structure has "*" and "*" (for type b) and "<" and ">" (for type c) added, it has no effect on the compiler, As described above, the meaning of “explanatory note described in symbol” is given only to this apparatus. As described above, the comment description peculiar to the present device has a function of controlling not only the comment description to the symbol but also the correspondence between the source program and the program design document when the program design document is generated.
【0060】以上のようにして、ソースプログラム解析
・プログラム設計書自動生成部3により生成されたアル
ゴリズムチャート等のプログラム設計書の基本データで
あるメタ・データはメタ・データファイル4に格納され
る。このメタ・データとは、前記したように、ソースプ
ログラムの種類、プログラム設計書の種別に依存しない
データ形式である。As described above, the meta data which is the basic data of the program design document such as the algorithm chart generated by the source program analysis / program design document automatic generation section 3 is stored in the meta data file 4. As described above, the meta data is a data format that does not depend on the type of source program and the type of program design document.
【0061】図7は、メタ・データ形式を説明するため
のもので、71はメタ・データの一例を示す。このメタ
・データ71は、C言語72の繰り返し制御文(whi
le文)73、この制御文73に対応するFORTRA
N言語74の制御文(DO文)75などを、本装置特有
のコメント記述(C言語72の例では/*[ ]*
/、FORTRAN言語74の例ではCC)も合成し
て、符号76に示す“1.while[ ]loo
p”のように、共通に表すデータ形式である。また、前
記した図5(a),(b)および図6のの場合における
メタ・データ例を以下に示す。 (1)図5(a)の場合 1.[処理その1]; 2.[処理その2]; 3.if[ ]then 4.5.[ ] end if; 5.[ ]; 6.[処理その3]; (2)図5(b)の場合 1.[処理その1]; 2.[処理その2]; 3.[処理その3]; (3)図6の場合 1.[処理その1]; 2.[処理その2]; refinement 3.[処理その3]; 4.[処理その4]; end refinement; 5.[処理その5];FIG. 7 is for explaining the meta data format, and 71 shows an example of the meta data. This meta data 71 is a repeat control statement (whi) of C language 72.
le sentence) 73, FORTRA corresponding to this control sentence 73
A control statement (DO statement) 75 in N language 74, etc., is described in a comment peculiar to the apparatus (/ * [] * in the example of C language 72).
/, CC in the example of the FORTRAN language 74) is also synthesized, and the symbol “1.
A common data format such as p ″. Further, an example of the meta data in the case of FIGS. 5A, 5B and 6 is shown below. (1) FIG. In the case of 1.) [Process 1]; 2. [Process 2]; 3. if [] then 4.5. [] End if; 5. []; 6. [Process 3]; (2) In the case of FIG. 5 (b) 1. [Process 1]; 2. [Process 2]; 3. [Process 3]; (3) In the case of FIG. 1. [Process 1]; Part 2]; refinement 3. [Processing 3]; 4. [Processing 4]; end refinement; 5. [Processing 5];
【0062】以上は、プログラム設計書がアルゴリズム
チャートの場合であるが、図1の装置では、帳票形式の
モジュール仕様書を自動生成することもできる。そのた
めに本実施例では、ソースプログラムのヘッダと称され
るコメント部中に、図8に示すように、モジュール仕様
書のための専用のヘッダ部であるモジュールヘッダ81
を設け、そのヘッダ81のコメント記述形式に一定のル
ール(キーワード)を与え、モジュール仕様書(M−S
pecシート)82と対応させている。この対応付けに
より、ソースプログラム解析・プログラム設計書自動生
成部3は、ソースプログラムのモジュールヘッダ81か
らモジュール仕様書(M−Specシート)82を生成
することが可能となる。The above is the case where the program design document is an algorithm chart, but the apparatus of FIG. 1 can also automatically generate a form-specific module specification document. Therefore, in this embodiment, in the comment part called the header of the source program, as shown in FIG. 8, the module header 81, which is a dedicated header part for module specifications, is used.
Is provided, a certain rule (keyword) is given to the comment description format of the header 81, and the module specification (MS
It corresponds to the (pec sheet) 82. By this association, the source program analysis / program design document automatic generation unit 3 can generate the module specifications (M-Spec sheet) 82 from the module header 81 of the source program.
【0063】次に、プログラム設計書自動分割部5の処
理の詳細を、指定のプログラム設計書がアルゴリズムチ
ャートである場合を例に、図9のフローチャートおよび
図10の自動分割説明図を参照して説明する。Next, with reference to the flowchart of FIG. 9 and the automatic division explanatory diagram of FIG. 10, the details of the processing of the program design specification automatic dividing unit 5 will be described, taking the case where the designated program design specification is an algorithm chart as an example. explain.
【0064】まずプログラム設計書自動分割部5は、メ
タ・データファイル4からメタ・データを入力し、その
メタ・データの示すアルゴリズムチャートを例えばフロ
ーチャートの形式で論理的な仮想無限空間に配置し、同
チャートを分割対象とする(図9ステップS91)。同
時にプログラム設計書自動分割部5は、フローチャート
中の制御構造シンボルの入れ子(ネスト)の深さに、レ
ベル(最も浅いレベルをレベル1とする)を付ける。こ
の仮想無限空間に配置され、且つ入れ子の深さレベルが
付されたフローチャートの一例を図10(a)に示す。First, the program design document automatic dividing unit 5 inputs meta data from the meta data file 4, arranges the algorithm chart indicated by the meta data in a logical virtual infinite space in the form of a flow chart, The chart is to be divided (step S91 in FIG. 9). At the same time, the program design document automatic dividing unit 5 attaches a level (the shallowest level is level 1) to the nesting depth of the control structure symbols in the flowchart. An example of a flowchart arranged in this virtual infinite space and given with nesting depth levels is shown in FIG.
【0065】次にプログラム設計書自動分割部5は、対
象シート(最初は、仮想無限空間に配置された1枚のシ
ート)が指定用紙サイズに収まるか否かをチェックし
(図9ステップS92)、収まらない場合には、「分割
する入れ子の深さレベル」を、仮想無限空間に配置した
アルゴリズムチャートの入れ子の深さレベルの最大値と
する(図9ステップS93)。これにより、図10
(a)の例では、「分割する入れ子の深さレベル」が最
初は“4”とされる。Next, the program design document automatic dividing section 5 checks whether or not the target sheet (first, one sheet arranged in the virtual infinite space) fits within the designated sheet size (step S92 in FIG. 9). If it does not fit, the "nesting depth level to be divided" is set to the maximum value of the nesting depth level of the algorithm chart arranged in the virtual infinite space (step S93 in FIG. 9). As a result, FIG.
In the example of (a), the “depth level of nesting to be divided” is initially set to “4”.
【0066】次にプログラム設計書自動分割部5は、仮
想無限空間に配置したアルゴリズムチャートから、上記
ステップS93で設定された「分割する入れ子の深さレ
ベル」(“4”)の制御構造シンボルを分割する(図9
ステップS94)。そしてプログラム設計書自動分割部
5は、分割後の仮想無限空間に配置されたアルゴリズム
チャートが指定用紙サイズに収まるか否かをチェックし
(図9ステップS95)、収まらないならば、それまで
の分割を一旦取り消して、「分割する入れ子の深さレベ
ル」を1レベル浅くする(図9ステップS96)。Next, the program design document automatic dividing unit 5 finds the control structure symbol of the "depth level of nesting to be divided"("4") set in step S93 from the algorithm chart arranged in the virtual infinite space. Split (Fig. 9)
Step S94). Then, the program design document automatic dividing unit 5 checks whether or not the algorithm chart arranged in the virtual infinite space after division fits within the designated paper size (step S95 in FIG. 9). Is once cancelled, and the "depth level of nesting to be divided" is made one level shallower (step S96 in FIG. 9).
【0067】プログラム設計書自動分割部5は、「分割
する入れ子の深さレベル」を1レベル浅くすると(ここ
では、“4”から“3”になる)、上記のステップS9
4の分割処理と、その分割処理結果に基づくステップS
95のチェックを行う。このようにしてプログラム設計
書自動分割部5は、分割後の仮想無限空間に配置された
アルゴリズムチャートが指定用紙サイズに収まるまで、
ステップS96,S94,S95を繰り返す。The program design document automatic dividing unit 5 reduces the "depth level of nesting to be divided" by one level (here, from "4" to "3"), and the above step S9 is performed.
4 division processing and step S based on the division processing result
Check 95. In this way, the program design document automatic dividing unit 5 until the algorithm chart arranged in the virtual infinite space after division fits into the designated paper size,
Steps S96, S94 and S95 are repeated.
【0068】やがて、図10(b)に示すように、「分
割する入れ子の深さレベル」“2”の制御構造シンボル
で分割した結果、分割後の仮想無限空間に配置されたア
ルゴリズムチャートが指定用紙サイズに収まるようにな
ると、プログラム設計書自動分割部5は、その分割した
レベルのアルゴリズム部分、即ち制御構造シンボルの部
分(ここでは、レベル2の制御構造シンボルの部分)を
新たな分割対象とする(図9ステップS97)。Eventually, as shown in FIG. 10 (b), as a result of division by the control structure symbol of "nesting depth level to be divided""2", the algorithm chart arranged in the virtual infinite space after division is designated. When it fits into the paper size, the program design document automatic dividing unit 5 sets the divided level algorithm portion, that is, the control structure symbol portion (here, the level 2 control structure symbol portion) as a new division target. (Step S97 in FIG. 9).
【0069】次にプログラム設計書自動分割部5は、上
記ステップS12に戻って、分割対象となるアルゴリズ
ムチャート部分(レベル2の制御構造シンボルの部分)
が指定用紙サイズに収まるか否かをチェックし、図10
(b)に示すように収まるならば、一連の自動分割処理
を終了する。このようにして自動分割が終了したプログ
ラム設計書は、本装置で自動生成されたプログラム設計
書として、プログラム設計書ファイル6に格納される。
これに対し、分割対象となるアルゴリズムチャート部分
が指定用紙サイズに収まらないならば、ステップS93
に進み、このアルゴリズムチャート部分に対する新たな
分割処理が開始される。Next, the program design document automatic dividing section 5 returns to the above step S12, and the algorithm chart portion to be divided (the control structure symbol portion of level 2).
Check whether the paper size fits in the specified paper size, and
If it fits as shown in (b), a series of automatic division processing ends. The program design document for which automatic division has been completed in this way is stored in the program design document file 6 as a program design document automatically generated by this apparatus.
On the other hand, if the algorithm chart portion to be divided does not fit within the specified paper size, step S93
Then, a new division process for this algorithm chart portion is started.
【0070】このようにプログラム設計書自動分割部5
は、アルゴリズムチャートが物理的に用紙サイズをオー
バーする部分を無条件で分割する方式ではなく、制御構
造の論理的な入れ子のレベルを単位として分割する新規
な方式を適用することを特徴としている。Thus, the program design document automatic dividing unit 5
Is characterized by applying a new method of dividing a portion where the algorithm chart physically exceeds the paper size unconditionally, instead of dividing by a logical nesting level of the control structure.
【0071】[0071]
【発明の効果】以上詳述したようにこの発明によれば、
プログラム設計書中に設定したい説明文をなす固有の記
述形式のコメントをソースプログラム中に記述しておく
ならば、そのソースプログラムから、プログラムの流
れ、プログラム制御構造および固有の形式のコメント記
述部分を解析し、その解析結果をもとに同プログラムか
ら説明文を含む設計情報を抽出してプログラム設計書を
生成する構成としたことにより、プログラム設計書が自
動的に作成され、プログラム設計書作成作業の大幅な省
力化を図ることができる。As described in detail above, according to the present invention,
If a comment in a unique description format that forms the explanatory text to be set in the program design document is described in the source program, the flow of the program, the program control structure, and the comment description part in the unique format are described from the source program. A program design document is created automatically by analyzing the design information and extracting design information including explanations from the program based on the analysis result to generate the program design document. It is possible to save a lot of labor.
【0072】また、この発明によれば、常にソースプロ
グラムと一致したプログラム設計書が自動的に作成され
るため、作成者による品質のばらつきなどをなくすこと
ができる。Further, according to the present invention, since the program design document that always matches the source program is automatically created, it is possible to eliminate variations in quality among creators.
【0073】更に、この発明によれば、生成されたプロ
グラム設計書を、指定の用紙サイズに収まるように、論
理的な構造を単位に、特に制御構造の論理的な入れ子レ
ベルを単位に分割して配置する構成としたので、物理的
に用紙サイズをオーバーする部分を無条件で分割する方
式に比べて、各分割部分を論理的に意味のあるものとす
ることができる。Further, according to the present invention, the generated program design document is divided into units of logical structure, in particular, the logical nesting level of the control structure so as to fit in the designated paper size. The divided portions can be logically meaningful as compared with the method of unconditionally dividing the portion that physically exceeds the paper size.
【図1】この発明の一実施例に係るプログラム設計書自
動作成装置の構成を示すブロック図。FIG. 1 is a block diagram showing the configuration of a program design document automatic creation apparatus according to an embodiment of the present invention.
【図2】図1のソースプログラム解析・プログラム設計
書自動生成部3の処理手順を示すフローチャート。FIG. 2 is a flowchart showing a processing procedure of a source program analysis / program design document automatic generation unit 3 in FIG.
【図3】図2のフローチャート中のステップS6,S
8,S10,S11の処理の詳細を示す図。FIG. 3 shows steps S6 and S in the flowchart of FIG.
The figure which shows the detail of the process of 8, S10, and S11.
【図4】タイプaのコメント記述を持つソースプログラ
ム(の一部)と対応するメタ・データの示すプログラム
設計書(フローチャート)の具体例を示す図。FIG. 4 is a diagram showing a specific example of a program design document (flow chart) indicated by meta data corresponding to (a part of) a source program having a comment description of type a.
【図5】タイプbのコメント記述を持つソースプログラ
ム(の一部)と対応するメタ・データの示すプログラム
設計書(フローチャート)の具体例を、タイプaのコメ
ント記述を持つソースプログラムの例と対比して示す
図。FIG. 5 compares a specific example of a program design document (flowchart) indicated by meta data corresponding to (a part of) a source program having a comment description of type b with an example of a source program having a comment description of type a. The figure shown.
【図6】タイプcのコメント記述を持つソースプログラ
ム(の一部)と対応するメタ・データの示すプログラム
設計書(フローチャート)の具体例を示す図。FIG. 6 is a diagram showing a specific example of a program design document (flow chart) indicated by meta data corresponding to (a part of) a source program having a comment description of type c.
【図7】メタ・データ形式を説明するための図。FIG. 7 is a diagram for explaining a meta data format.
【図8】ソースプログラム中に設けられたモジュールヘ
ッダのコメント記述形式とモジュール仕様書とを対比さ
せて示す図。FIG. 8 is a diagram showing a comment description format of a module header provided in a source program in comparison with a module specification.
【図9】図1のプログラム設計書自動分割部5の処理手
順を示すフローチャート。9 is a flowchart showing a processing procedure of a program design document automatic dividing unit 5 in FIG. 1. FIG.
【図10】図1のプログラム設計書自動分割部5による
プログラム設計書(フローチャート)の自動分割を説明
するための図。10 is a diagram for explaining automatic division of a program design document (flow chart) by the program design document automatic dividing unit 5 in FIG. 1;
1…ソースプログラムファイル、3…ソースプログラム
解析・プログラム設計書自動生成部、4…メタ・データ
ファイル、5…プログラム設計書自動分割部、6…プロ
グラム設計書ファイル、7…プログラム設計書表示・編
集・印刷部、8…表示装置、9…印刷装置、10…入力
装置、11…制御部、21〜23…コメント。1 ... Source program file, 3 ... Source program analysis / program design document automatic generation unit, 4 ... Meta data file, 5 ... Program design document automatic division unit, 6 ... Program design document file, 7 ... Program design document display / edit -Printing unit, 8 ... Display device, 9 ... Printing device, 10 ... Input device, 11 ... Control unit, 21-23 ... Comments.
Claims (6)
をなし固有のコメント記述形式で記述されたコメント記
述部分を有するソースプログラムが格納されるソースプ
ログラムファイルと、 このソースプログラムファイルに格納されているソース
プログラムを入力して、プログラムの流れ、プログラム
制御構造および前記固有のコメント記述形式のコメント
記述部分を解析し、その解析結果をもとに同プログラム
から前記説明文を含む設計情報を抽出してプログラム設
計書を生成するプログラム設計書生成手段と、 を具備することを特徴とするプログラム設計書自動作成
装置。1. A source program file in which a source program having a comment description part described in a unique comment description format without a description set in a program design document is stored, and a source program file stored in the source program file. Input the source program, analyze the program flow, the program control structure and the comment description part of the unique comment description format, and extract the design information including the description from the program based on the analysis result. An apparatus for automatically creating a program design document, comprising: a program design document generating means for generating a program design document by means of:
のタイプのコメント記述形式を定義し、前記プログラム
設計書生成手段は、前記ソースプログラム中にこの第1
のタイプのコメント記述形式のコメント記述部分が存在
し、且つ前記ソースプログラム中のそのコメント記述部
分から次に現れる固有のコメント記述形式のコメント記
述部分までに制御構造文が存在する場合には、少くとも
その制御構造文毎に対応するシンボルを持ち、その先頭
のシンボルにコメント記述内容が設定されたプログラム
設計書データを生成し、制御構造文が存在しない場合に
は、所定のシンボルにコメント記述内容が設定されたプ
ログラム設計書データを生成することを特徴とする請求
項1記載のプログラム設計書自動作成装置。2. The first comment description format as the unique comment description format
Of the first type in the source program, the program design document generating means defines
If there is a comment description part of the comment description format of the type and there is a control structure statement from the comment description part in the source program to the comment description part of the unique comment description format that appears next, Each has a symbol corresponding to each control structure statement, and generates the program design document data in which the comment description content is set in the first symbol, and if the control structure statement does not exist, the comment description content in the predetermined symbol The program design document automatic creation apparatus according to claim 1, wherein the program design document data in which is set is generated.
のタイプのコメント記述形式を定義し、前記プログラム
設計書生成手段は、前記ソースプログラム中にこの第2
のタイプのコメント記述形式のコメント記述部分が存在
する場合には、前記ソースプログラム中のそのコメント
記述部分から次に現れる固有のコメント記述形式のコメ
ント記述部分までに存在する制御構造文を全て無視し、
所定のシンボルにコメント記述内容が設定されたプログ
ラム設計書データを生成することを特徴とする請求項2
記載のプログラム設計書自動作成装置。3. The second comment description format as the unique comment description format
Of the comment description format of the type
When there is a comment description part of the comment description format of the above type, all control structure statements existing from the comment description part in the source program to the comment description part of the unique comment description format that appears next are ignored. ,
The program design document data in which the comment description content is set in a predetermined symbol is generated.
Automatic program design document creation device.
のタイプのコメント記述形式を定義し、前記プログラム
設計書生成手段は、前記ソースプログラム中にこの第3
のタイプのコメント記述形式のコメント記述部分が存在
する場合には、前記ソースプログラム中のそのコメント
記述部分から次に現れる同タイプのコメント記述部分ま
でを抽象表現したたプログラム設計書データを生成する
ことを特徴とする請求項3記載のプログラム設計書自動
作成装置。4. The third comment description format is unique to the unique comment description format.
Of the third type is defined, and the program design document generating means defines the third
When a comment description part of the comment description format of the type exists, the program design document data that is an abstract representation from the comment description part in the source program to the comment description part of the same type that appears next is generated. 4. The program design document automatic creation apparatus according to claim 3.
成されたプログラム設計書が指定の用紙サイズに収まる
ように、論理的な構造を単位に同設計書を分割して配置
する分割手段を更に備えたことを特徴とする請求項1乃
至請求項4記載のプログラム設計書自動作成装置。5. A dividing unit is further provided for dividing and arranging the program design document generated by the program design document generation unit in units of a logical structure so that the program design document fits within a designated paper size. 5. The program design document automatic creation device according to claim 1, wherein:
がアルゴリズムチャートの場合、制御構造の論理的な入
れ子レベルを単位に同プログラム設計書を分割すること
を特徴とする請求項5記載のプログラム設計書自動作成
装置。6. The program designing program according to claim 5, wherein the dividing unit divides the program designing document in units of logical nesting levels of the control structure when the program designing document is an algorithm chart. Automatic call creation device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4127467A JPH05324289A (en) | 1992-05-20 | 1992-05-20 | Device for automatically generating programming specification |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4127467A JPH05324289A (en) | 1992-05-20 | 1992-05-20 | Device for automatically generating programming specification |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05324289A true JPH05324289A (en) | 1993-12-07 |
Family
ID=14960656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4127467A Pending JPH05324289A (en) | 1992-05-20 | 1992-05-20 | Device for automatically generating programming specification |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05324289A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007265089A (en) * | 2006-03-29 | 2007-10-11 | Fujitsu Ltd | Software maintenance support program, processing method, and device |
JP2008198103A (en) * | 2007-02-15 | 2008-08-28 | Nec Corp | State transition diagram preparing device and state transition diagram preparing method |
JP2020077191A (en) * | 2018-11-07 | 2020-05-21 | 三菱電機株式会社 | Product line development support device |
-
1992
- 1992-05-20 JP JP4127467A patent/JPH05324289A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007265089A (en) * | 2006-03-29 | 2007-10-11 | Fujitsu Ltd | Software maintenance support program, processing method, and device |
JP2008198103A (en) * | 2007-02-15 | 2008-08-28 | Nec Corp | State transition diagram preparing device and state transition diagram preparing method |
JP2020077191A (en) * | 2018-11-07 | 2020-05-21 | 三菱電機株式会社 | Product line development support device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0370778B1 (en) | Method for manipulating digital text data | |
JPH0683554A (en) | Operation guide device | |
US11158118B2 (en) | Language model, method and apparatus for interpreting zoning legal text | |
JPH06259420A (en) | Sentence editing support device | |
JP2004272822A (en) | Character recognition device, character recognition means and computer program | |
JPH05324289A (en) | Device for automatically generating programming specification | |
JP2005173999A (en) | Device, system and method for searching electronic file, program, and recording media | |
JPH08221417A (en) | New/old comparing editing device for structured document | |
US20030154462A1 (en) | Software maintenance material generation apparatus and generation program therefor | |
JP3933892B2 (en) | Specification creation program and computer-readable medium storing specification creation program | |
JP2838984B2 (en) | General-purpose reference device | |
JPH07146785A (en) | Method for automatically generating program and device therefor | |
JPH07160490A (en) | Coding assistance device | |
JP2626174B2 (en) | Translation support device | |
JPH0916597A (en) | Sentence elaboration device and method therefor | |
JP3964910B2 (en) | Machine translation device | |
JP2757367B2 (en) | Character processor | |
JPH03233669A (en) | Document preparing device | |
JPH01126767A (en) | Dictionary referring device | |
JPH03164975A (en) | Mechanical translating device | |
JP3098076B2 (en) | Machine translation equipment | |
JPH05290083A (en) | Document generation support device | |
JPH04340130A (en) | Documentation system for program information | |
JPH02137061A (en) | Sentence producing device | |
JPH0216671A (en) | Document preparation supporting device |